SectionGroup SectionGroup SectionGroup SectionGroup Class


Provides access to a group of related configuration section groups or configuration section definitions.

public ref class SectionGroup sealed
public sealed class SectionGroup
type SectionGroup = class
Public NotInheritable Class SectionGroup


The following example demonstrates the SectionGroup class.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Web.Administration;
using Microsoft.Web.Management;

namespace AdministrationSnippets
    public class AdministrationSectionDefinition
        // List all configuration sections in applicationHost.config
        public void ShowAllSections()
            ServerManager manager = new ServerManager();
            SectionGroup rootGroup = 
            ShowGroup(rootGroup, -1);


        private void ShowGroup(SectionGroup group, int indentLevel)
            Console.Write("".PadLeft(++indentLevel, ' '));
            string grpName = String.IsNullOrEmpty(group.Name) ? "{root}" : group.Name;
            Console.WriteLine("+ Section Group: {0}; Sub-groups: {1}; Sections: {2}",
                grpName, group.SectionGroups.Count, group.Sections.Count);

            foreach (SectionGroup grp in group.SectionGroups)
                ShowGroup(grp, indentLevel);

            string path = String.Concat(group.Name, "/");

            foreach (SectionDefinition def in group.Sections)
                Console.Write("".PadLeft(indentLevel, ' '));
                Console.WriteLine("|_Name:                {0}", String.Concat(path,def.Name));
                Console.Write("".PadLeft(indentLevel, ' '));
                Console.WriteLine("|_AllowDefinition:     {0}", def.AllowDefinition);
                Console.Write("".PadLeft(indentLevel, ' '));
                Console.WriteLine("|_AllowLocation:       {0}", def.AllowLocation);
                Console.Write("".PadLeft(indentLevel, ' '));
                Console.WriteLine("|_OverrideModeDefault: {0}", def.OverrideModeDefault);
                Console.Write("".PadLeft(indentLevel, ' '));
                Console.WriteLine("|_Type:                {0}\r\n", 
                    String.IsNullOrEmpty(def.Type) ? "null" : def.Type);



Because some configuration sections are related, it is often convenient to group them in a single section group. The SectionGroup class represents the <sectionGroup> XML element in a configuration file.

Use the Sections property to access the sections in this SectionGroup object.

A SectionGroup can also contain other SectionGroup objects, which you can access through the SectionGroups property.


Name Name Name Name

Gets the name of the configuration section group.

SectionGroups SectionGroups SectionGroups SectionGroups

Gets a collection of nested configuration section groups.

Sections Sections Sections Sections

Gets a collection of nested configuration section definitions.

Type Type Type Type

Gets or sets the .NET Framework type of the configuration section group.

Applies to