public static GeneralSolutionFileGlobalSection New(string name, PreOrPostSolution preOrPostSolution)
        {
            var output = new GeneralSolutionFileGlobalSection
            {
                Name = name,
                PreOrPostSolution = preOrPostSolution,
            };

            return(output);
        }
        public static GeneralSolutionFileGlobalSection CreateExtensibilityGlobals()
        {
            var solutionProperties = new GeneralSolutionFileGlobalSection
            {
                Name = SolutionFileConstants.ExtensibilityGlobalsSolutionGlobalSectionName,
                PreOrPostSolution = PreOrPostSolution.PostSolution,
            };

            solutionProperties.Lines.Add($"SolutionGuid = {Guid.NewGuid().ToStringSolutionFileFormat()}");

            return(solutionProperties);
        }
        public static GeneralSolutionFileGlobalSection CreateSolutionPropertiesGlobalSection()
        {
            var solutionProperties = new GeneralSolutionFileGlobalSection
            {
                Name = SolutionFileConstants.SolutionPropertiesSolutionGlobalSectionName,
                PreOrPostSolution = PreOrPostSolution.PreSolution,
            };

            solutionProperties.Lines.Add("HideSolutionNode = FALSE");

            return(solutionProperties);
        }
        public static bool HasGlobalSection(this IEnumerable <ISolutionFileGlobalSection> globalSections, string globalSectionName, out GeneralSolutionFileGlobalSection globalSection)
        {
            var output = globalSections.HasGlobalSectionByName(globalSectionName, out globalSection);

            return(output);
        }
        public static GeneralSolutionFileGlobalSection AcquireGlobalSection(this List <ISolutionFileGlobalSection> globalSections, string globalSectionName, PreOrPostSolution preOrPostSolution)
        {
            var globalSection = globalSections.AcquireGlobalSectionByName(globalSectionName, () => GeneralSolutionFileGlobalSection.New(globalSectionName, preOrPostSolution));

            return(globalSection);
        }