ConfigurationSectionGroup ConfigurationSectionGroup ConfigurationSectionGroup ConfigurationSectionGroup Class

定義

構成ファイル内の関連するセクションのグループを表します。Represents a group of related sections within a configuration file.

public ref class ConfigurationSectionGroup
public class ConfigurationSectionGroup
type ConfigurationSectionGroup = class
Public Class ConfigurationSectionGroup
継承
ConfigurationSectionGroupConfigurationSectionGroupConfigurationSectionGroupConfigurationSectionGroup
派生

クラスを使用してConfigurationSectionGroup構成設定を取得する方法を次の例に示します。The following example shows how to use the ConfigurationSectionGroup class to retrieve configuration settings. この例は、構成設定を読み取り、各構成セクショングループとセクションに関する情報をコンソールに書き込むコンソールアプリケーションです。The example is a console application that reads configuration settings and writes information about each configuration section group and the sections in it to the console.

メソッドMainは、構成設定をConfigurationオブジェクトに読み込み、 ConfigurationオブジェクトからSectionGroupsコレクションを取得してから、メソッドをShowSectionGroupCollectionInfo呼び出してセクションのプロパティ値を表示します。The Main method loads the configuration settings into a Configuration object, retrieves the SectionGroups collection from the Configuration object, and then calls the ShowSectionGroupCollectionInfo method to display the section property values.

メソッドShowSectionGroupCollectionInfoは、セクショングループを反復処理し、 ShowSectionGroupInfoそれぞれに対してメソッドを呼び出します。The ShowSectionGroupCollectionInfo method iterates through the section groups and calls the ShowSectionGroupInfo method for each one.

メソッドShowSectionGroupInfoは、セクショングループの名前、いくつかのプロパティ値、およびセクションに含まれるセクションの名前を表示します。The ShowSectionGroupInfo method displays the name of the section group, some property values, and the names of the sections that it contains. セクショングループにセクショングループが含まれている場合ShowSectionGroupCollectionInfo 、このメソッドは再帰的にを呼び出してこれらのセクショングループを表示します。If the section group contains section groups, this method calls ShowSectionGroupCollectionInfo recursively to display those section groups.

フィールドindentLevelは、論理グループを表示するために、表示されている行の左側にスペースを追加するために使用されます。The indentLevel field is used to add spaces to the left side of displayed lines to show logical groupings. 行の折り返しを避けるために、すべての行がテキストの79文字に制限されています。これにより、論理的なグループを区別することが難しくなります。All lines are limited to 79 characters of text to avoid line wrapping, which would make it harder to distinguish the logical groupings.

using System;
using System.Collections;
using System.Configuration;

namespace Samples.AspNet
{
    class UsingConfigurationSectionGroup
    {
        static int indentLevel = 0;

        static void Main(string[] args)
        {

            // Get the application configuration file.
            System.Configuration.Configuration config =
                ConfigurationManager.OpenExeConfiguration(
                ConfigurationUserLevel.None);

            // Get the collection of the section groups.
            ConfigurationSectionGroupCollection sectionGroups =
                config.SectionGroups;

            // Display the section groups.
            ShowSectionGroupCollectionInfo(sectionGroups);
        }

        static void ShowSectionGroupCollectionInfo(
            ConfigurationSectionGroupCollection sectionGroups)
        {
            foreach (ConfigurationSectionGroup sectionGroup in sectionGroups)
            {
                ShowSectionGroupInfo(sectionGroup);
            }
        }

        static void ShowSectionGroupInfo(
            ConfigurationSectionGroup sectionGroup)
        {
            // Get the section group name.
            indent("Section Group Name: " + sectionGroup.Name);

            // Get the fully qualified group name.
            indent("Section Group Name: " + sectionGroup.SectionGroupName);

            indentLevel++;

            indent("Type: " + sectionGroup.Type);
            indent("Is Group Required?: " + 
                sectionGroup.IsDeclarationRequired);
            indent("Is Group Declared?: " + sectionGroup.IsDeclared);
            indent("Contained Sections:");

            indentLevel++;
            foreach (ConfigurationSection section 
                in sectionGroup.Sections)
            {
                indent("Section Name:" + section.SectionInformation.Name);
            }
            indentLevel--;

            // Display contained section groups if there are any.
            if (sectionGroup.SectionGroups.Count > 0)
            {
                indent("Contained Section Groups:");

                indentLevel++;
                ConfigurationSectionGroupCollection sectionGroups =
                    sectionGroup.SectionGroups;
                ShowSectionGroupCollectionInfo(sectionGroups);
            }

            Console.WriteLine("");
            indentLevel--;
        }

        static void indent(string text)
        {
            for (int i = 0; i < indentLevel; i++)
            {
                Console.Write("  ");
            }
            Console.WriteLine(text.Substring(0, Math.Min(79 - indentLevel * 2, text.Length)));
        }
    }

}
Imports System.Collections
Imports System.Configuration

Class UsingConfigurationSectionGroup
   Private Shared indentLevel As Integer = 0
    
    Public Shared Sub Main(ByVal args() As String)

        ' Get the application configuration file.
        Dim config As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)

        ' Get the collection of the section groups.
        Dim sectionGroups As ConfigurationSectionGroupCollection = _
            config.SectionGroups

        ' Display the section groups.
        ShowSectionGroupCollectionInfo(sectionGroups)
    End Sub

    Shared Sub ShowSectionGroupCollectionInfo( _
        ByVal sectionGroups _
        As ConfigurationSectionGroupCollection)

        Dim group As ConfigurationSectionGroup
        For Each group In sectionGroups
            ShowSectionGroupInfo(group)
        Next group
    End Sub

    Shared Sub ShowSectionGroupInfo( _
    ByVal sectionGroup As ConfigurationSectionGroup)
        ' Get the section group name.
        indent("Section Group Name: " + sectionGroup.Name)

        ' Get the fully qualified section group name.
        indent("Section Group Name: " + sectionGroup.SectionGroupName)

        indentLevel += 1

        indent("Type: " + sectionGroup.Type)
        indent("Is Group Required?: " + _
           sectionGroup.IsDeclarationRequired.ToString())
        indent("Is Group Declared?: " + _
            sectionGroup.IsDeclared.ToString())
        indent("Contained Sections:")

        indentLevel += 1
        Dim section As ConfigurationSection
        For Each section In sectionGroup.Sections
            indent("Section Name:" + section.SectionInformation.Name)
        Next section
        indentLevel -= 1

        If (sectionGroup.SectionGroups.Count > 0) Then
            indent("Contained Section Groups:")

            indentLevel += 1
            Dim sectionGroups As ConfigurationSectionGroupCollection = _
                sectionGroup.SectionGroups
            ShowSectionGroupCollectionInfo(sectionGroups)
            indentLevel -= 1
        End If

        indent("")
        indentLevel -= 1

    End Sub
    Shared Sub indent(ByVal text As String)
        Dim i As Integer
        For i = 0 To indentLevel - 1
            Console.Write("  ")
        Next i
        Console.WriteLine(Left(text, 79 - indentLevel * 2))
    End Sub

End Class 'UsingConfigurationSectionGroup 

注釈

構成ファイル (web.config ファイルなど) の設定は、セクションにまとめられています。Settings in configuration files (such as the Web.config file) are organized into sections. 一部のセクションは関連しているため、多くの場合、セクショングループにグループ化すると便利です。Because some sections are related, it is often convenient to group them in a section group. クラスConfigurationSectionGroupは、構成sectionGroupファイルのconfigSections要素でセクションをグループ化するために使用される XML 要素を表します。The ConfigurationSectionGroup class represents the sectionGroup XML element that is used to group sections when they are defined in the configSections element of a configuration file. セクショングループは入れ子にすることができます (セクショングループには、他のセクショングループとセクションを含めることができます)。Section groups can be nested (a section group can contain other section groups as well as sections). 次の例は、 configSections入れ子になった3つのセクショングループを定義する要素を示しています。The following example shows a configSections element that defines three nested section groups:

<configSections>  
  <sectionGroup name="system.web.extensions"...>  
    <sectionGroup name="scripting" ...>  
      <section name="scriptResourceHandler".../>  
      <sectionGroup name="webServices"...>  
        <section name="jsonSerialization" .../>  
        <section name="profileService" ... />        <section name="authenticationService" .../>  
        <section name="roleService" .../>  
      </sectionGroup>  
    </sectionGroup>  
  </sectionGroup>  
</configSections>  

構成システムは、構成ファイルからオブジェクトにConfigurationSectionGroup設定を読み込みます。The configuration system loads settings from configuration files into ConfigurationSectionGroup objects. プロパティSectionsとプロパティを使用SectionGroupsすると、 ConfigurationSectionGroupオブジェクトに格納されているセクションおよびセクショングループにアクセスできます。You can use the Sections and SectionGroups properties to access the sections and section groups that are contained in a ConfigurationSectionGroup object.

構成ファイルから情報にアクセスする方法の詳細についてはConfigurationManager 、クラスを参照してください。For more information about how to access information from configuration files, see the ConfigurationManager class.

コンストラクター

ConfigurationSectionGroup() ConfigurationSectionGroup() ConfigurationSectionGroup() ConfigurationSectionGroup()

ConfigurationSectionGroup クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConfigurationSectionGroup class.

プロパティ

IsDeclarationRequired IsDeclarationRequired IsDeclarationRequired IsDeclarationRequired

この ConfigurationSectionGroup オブジェクト宣言が必要かどうかを示す値を取得します。Gets a value that indicates whether this ConfigurationSectionGroup object declaration is required.

IsDeclared IsDeclared IsDeclared IsDeclared

ConfigurationSectionGroup オブジェクトが宣言されているかどうかを示す値を取得します。Gets a value that indicates whether this ConfigurationSectionGroup object is declared.

Name Name Name Name

この ConfigurationSectionGroup オブジェクトの名前プロパティを取得します。Gets the name property of this ConfigurationSectionGroup object.

SectionGroupName SectionGroupName SectionGroupName SectionGroupName

この ConfigurationSectionGroup に関連付けられているセクション グループ名を取得します。Gets the section group name associated with this ConfigurationSectionGroup.

SectionGroups SectionGroups SectionGroups SectionGroups

この ConfigurationSectionGroupCollection オブジェクトの子であるすべての ConfigurationSectionGroup オブジェクトを格納している ConfigurationSectionGroup オブジェクトを取得します。Gets a ConfigurationSectionGroupCollection object that contains all the ConfigurationSectionGroup objects that are children of this ConfigurationSectionGroup object.

Sections Sections Sections Sections

この ConfigurationSectionCollection オブジェクト内のすべての ConfigurationSection オブジェクトを格納している ConfigurationSectionGroup オブジェクトを取得します。Gets a ConfigurationSectionCollection object that contains all of ConfigurationSection objects within this ConfigurationSectionGroup object.

Type Type Type Type

この ConfigurationSectionGroup オブジェクトの型を取得または設定します。Gets or sets the type for this ConfigurationSectionGroup object.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
ForceDeclaration() ForceDeclaration() ForceDeclaration() ForceDeclaration()

この ConfigurationSectionGroup オブジェクトの宣言を強制的に行います。Forces the declaration for this ConfigurationSectionGroup object.

ForceDeclaration(Boolean) ForceDeclaration(Boolean) ForceDeclaration(Boolean) ForceDeclaration(Boolean)

この ConfigurationSectionGroup オブジェクトの宣言を強制的に行います。Forces the declaration for this ConfigurationSectionGroup object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ShouldSerializeSectionGroupInTargetVersion(FrameworkName) ShouldSerializeSectionGroupInTargetVersion(FrameworkName) ShouldSerializeSectionGroupInTargetVersion(FrameworkName) ShouldSerializeSectionGroupInTargetVersion(FrameworkName)

指定されたターゲット バージョンの .NET Framework.NET Framework 用に構成オブジェクト階層をシリアル化するとき、現在の ConfigurationSectionGroup インスタンスがシリアル化されるかどうかを示します。Indicates whether the current ConfigurationSectionGroup instance should be serialized when the configuration object hierarchy is serialized for the specified target version of the .NET Framework.NET Framework.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象

こちらもご覧ください