ConfigurationSectionGroup 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
구성 파일에 있는 관련된 섹션의 그룹을 나타냅니다.
public ref class ConfigurationSectionGroup
public class ConfigurationSectionGroup
type ConfigurationSectionGroup = class
Public Class ConfigurationSectionGroup
- 상속
-
ConfigurationSectionGroup
- 파생
예제
다음 예제에서는 사용 하는 방법에 설명 합니다 ConfigurationSectionGroup 구성 설정을 검색 하는 클래스입니다. 예제 구성 파일을 읽고 각 구성 섹션 그룹 및 그 안에 콘솔에 있는 섹션에 대 한 정보를 기록 하는 콘솔 애플리케이션입니다.
메서드는 Main
구성 설정을 개체로 Configuration 로드하고, 개체에서 Configuration 컬렉션을 검색 SectionGroups 한 다음, 메서드를 ShowSectionGroupCollectionInfo
호출하여 섹션 속성 값을 표시합니다.
메서드는 ShowSectionGroupCollectionInfo
섹션 그룹을 반복하고 각 그룹에 대해 메서드를 ShowSectionGroupInfo
호출합니다.
메서드는 ShowSectionGroupInfo
섹션 그룹의 이름, 일부 속성 값 및 포함된 섹션의 이름을 표시합니다. 섹션 그룹에 섹션 그룹이 포함된 경우 이 메서드는 재귀적으로 를 호출 ShowSectionGroupCollectionInfo
하여 해당 섹션 그룹을 표시합니다.
indentLevel
필드는 표시된 줄의 왼쪽에 공백을 추가하여 논리적 그룹화가 표시되는 데 사용됩니다. 줄 바꿈을 방지하기 위해 모든 줄은 텍스트의 79자로 제한되므로 논리적 그룹화 구분이 어려워집니다.
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
설명
구성 파일의 설정(예: Web.config 파일)은 섹션으로 구성됩니다. 일부 섹션은 관련되어 있으므로 섹션 그룹에서 그룹화하면 편리합니다. 클래스는 ConfigurationSectionGroup 구성 파일의 sectionGroup
요소에 정의된 configSections
섹션을 그룹화하는 데 사용되는 XML 요소를 나타냅니다. 섹션 그룹을 중첩할 수 있습니다(섹션 그룹에는 섹션뿐만 아니라 다른 섹션 그룹도 포함될 수 있음). 다음 예제에서는 세 개의 configSections
중첩된 섹션 그룹을 정의하는 요소를 보여 줍니다.
<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 로드합니다. 및 SectionGroups 속성을 사용하여 Sections 개체에 포함된 ConfigurationSectionGroup 섹션 및 섹션 그룹에 액세스할 수 있습니다.
구성 파일에서 정보에 액세스하는 방법에 대한 자세한 내용은 클래스를 참조하세요 ConfigurationManager .
생성자
ConfigurationSectionGroup() |
ConfigurationSectionGroup 클래스의 새 인스턴스를 초기화합니다. |
속성
IsDeclarationRequired |
이 ConfigurationSectionGroup 개체 선언이 필요한지 여부를 나타내는 값을 가져옵니다. |
IsDeclared |
이 ConfigurationSectionGroup 개체가 선언되었는지 여부를 나타내는 값을 가져옵니다. |
Name |
이 ConfigurationSectionGroup 개체의 이름 속성을 가져옵니다. |
SectionGroupName |
이 ConfigurationSectionGroup과 연결된 섹션 그룹 이름을 가져옵니다. |
SectionGroups |
이 ConfigurationSectionGroupCollection 개체의 자식인 ConfigurationSectionGroup 개체를 모두 포함하는 ConfigurationSectionGroup 개체를 가져옵니다. |
Sections |
이 ConfigurationSectionCollection 개체 내에 모든 ConfigurationSection 개체를 포함하는 ConfigurationSectionGroup 개체를 가져옵니다. |
Type |
이 ConfigurationSectionGroup 개체의 형식을 가져오거나 설정합니다. |
메서드
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
ForceDeclaration() |
이 ConfigurationSectionGroup 개체를 강제로 선언합니다. |
ForceDeclaration(Boolean) |
이 ConfigurationSectionGroup 개체를 강제로 선언합니다. |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ShouldSerializeSectionGroupInTargetVersion(FrameworkName) |
구성 개체 계층이 .NET Framework 지정된 대상 버전에 대해 직렬화될 때 현재 ConfigurationSectionGroup instance 직렬화해야 하는지 여부를 나타냅니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
적용 대상
추가 정보
.NET