ConfigurationElement 클래스

정의

구성 파일 내의 구성 요소를 나타냅니다.Represents a configuration element within a configuration file.

public ref class ConfigurationElement abstract
public abstract class ConfigurationElement
type ConfigurationElement = class
Public MustInherit Class ConfigurationElement
상속
ConfigurationElement
파생

예제

다음 코드 예제에서는 사용자 지정 ConfigurationElement를 사용자 지정 섹션의 개별 요소로 구현 하 고 사용자 지정 섹션의 요소 컬렉션으로 구현 하는 방법을 보여 줍니다.The following code example shows how to implement a custom ConfigurationElement both as an individual element in a custom section and as a collection of elements in a custom section. 예제는 다음 파일로 구성 됩니다.The example consists of the following files:

  • MyUrls이라는 사용자 지정 섹션이 포함 된 app.config 파일입니다.An app.config file that contains a custom section that is named MyUrls. 이 섹션에서는 (다른 요소가 포함 되지 않습니다)는 단순 요소 및 요소의 컬렉션을 포함 합니다.This section contains a simple element (it does not contain any other elements) and a collection of elements. 단순 요소는 simple 이름이 지정 되 고 컬렉션은 urls이름이 지정 됩니다.The simple element is named simple and the collection is named urls.

  • 콘솔 애플리케이션입니다.A console application. 애플리케이션의 app.config 파일의 내용을 읽고 콘솔에 정보를 씁니다.The application reads the contents of the app.config file and writes the information to the console. ConfigurationElement, ConfigurationElementCollectionConfigurationSection에서 파생 되는 클래스를 사용 합니다.It uses classes that derive from ConfigurationElement, ConfigurationElementCollection, and ConfigurationSection.

  • ConfigurationSection 클래스에서 파생 되는 UrlsSection 라는 클래스입니다.A class named UrlsSection that derives from the ConfigurationSection class. 이 클래스는 구성 파일의 MyUrls 섹션에 액세스 하는 데 사용 됩니다.This class is used to access the MyUrls section in the configuration file.

  • ConfigurationElementCollection 클래스에서 파생 되는 UrlsCollection 라는 클래스입니다.A class named UrlsCollection that derives from the ConfigurationElementCollection class. 이 클래스는 구성 파일의 urls 컬렉션에 액세스 하는 데 사용 됩니다.This class is used to access the urls collection in the configuration file.

  • ConfigurationElement 클래스에서 파생 되는 UrlConfigElement 라는 클래스입니다.A class named UrlConfigElement that derives from the ConfigurationElement class. 이 클래스는 simple 요소와 구성 파일에 있는 urls 컬렉션의 멤버에 액세스 하는 데 사용 됩니다.This class is used to access the simple element and the members of the urls collection in the configuration file.

예제를 실행 하려면 다음 단계를 수행 합니다.To run the example, perform the following steps:

  1. 콘솔 애플리케이션 프로젝트 및 이라고 하는 클래스 라이브러리 프로젝트를 포함 하는 솔루션을 만드는 ConfigurationElement합니다.Create a solution that has a console application project and a class library project that is named ConfigurationElement.

  2. 클래스 라이브러리 프로젝트의 세 가지 클래스 파일을 배치 하 고 콘솔 라이브러리 프로젝트에서 다른 파일을 배치 합니다.Put the three class files in the class library project and put the other files in the console library project.

  3. 두 프로젝트 모두에서 System.Configuration에 대 한 참조를 설정 합니다.In both projects set a reference to System.Configuration.

  4. 콘솔에서 애플리케이션 프로젝트에 클래스 라이브러리 프로젝트에 대 한 프로젝트 참조를 설정 합니다.In the console application project set a project reference to the class library project.

// Set Assembly name to ConfigurationElement
using System;
using System.Configuration;
using System.Collections;

namespace Samples.AspNet
{
    // Entry point for console application that reads the 
    // app.config file and writes to the console the 
    // URLs in the custom section.  
    class TestConfigurationElement
    {
        static void Main(string[] args)
        {
            // Get current configuration file.
            System.Configuration.Configuration config =
                ConfigurationManager.OpenExeConfiguration(
                ConfigurationUserLevel.None);

            // Get the MyUrls section.
            UrlsSection myUrlsSection =
                config.GetSection("MyUrls") as UrlsSection;

            if (myUrlsSection == null)
            {
                Console.WriteLine("Failed to load UrlsSection.");
            }
            else
            {
                Console.WriteLine("The 'simple' element of app.config:");
                Console.WriteLine("  Name={0} URL={1} Port={2}",
                    myUrlsSection.Simple.Name,
                    myUrlsSection.Simple.Url,
                    myUrlsSection.Simple.Port);

                Console.WriteLine("The urls collection of app.config:");
                for (int i = 0; i < myUrlsSection.Urls.Count; i++)
                {
                    Console.WriteLine("  Name={0} URL={1} Port={2}",
                        myUrlsSection.Urls[i].Name,
                        myUrlsSection.Urls[i].Url,
                        myUrlsSection.Urls[i].Port);
                }
            }
            Console.ReadLine();
        }
    }
}
' Set Assembly name to ConfigurationElement
' and set Root namespace to Samples.AspNet
Imports System.Configuration
Imports System.Collections

Class TestConfigurationElement
    ' Entry point for console application that reads the 
    ' app.config file and writes to the console the 
    ' URLs in the custom section.
    Shared Sub Main(ByVal args() As String)
        ' Get the current configuration file.
        Dim config As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)

        ' Get the MyUrls section.
        Dim myUrlsSection As UrlsSection = _
            config.GetSection("MyUrls")

        If myUrlsSection Is Nothing Then
            Console.WriteLine("Failed to load UrlsSection.")
        Else
            Console.WriteLine("The 'simple' element of app.config:")
            Console.WriteLine("  Name={0} URL={1} Port={2}", _
                myUrlsSection.Simple.Name, _
                myUrlsSection.Simple.Url, _
                myUrlsSection.Simple.Port)
            Console.WriteLine("The urls collection of app.config:")
            Dim i As Integer
            For i = 0 To myUrlsSection.Urls.Count - 1
                Console.WriteLine("  Name={0} URL={1} Port={2}", _
                i, myUrlsSection.Urls(i).Name, _
                myUrlsSection.Urls(i).Url, _
                myUrlsSection.Urls(i).Port)
            Next i
        End If
        Console.ReadLine()
    End Sub
End Class
using System;
using System.Configuration;
using System.Collections;

namespace Samples.AspNet
{
    // Define a custom section containing an individual
    // element and a collection of elements.
    public class UrlsSection : ConfigurationSection
    {
        [ConfigurationProperty("name", 
            DefaultValue = "MyFavorites",
            IsRequired = true, 
            IsKey = false)]
        [StringValidator(InvalidCharacters = 
            " ~!@#$%^&*()[]{}/;'\"|\\",
            MinLength = 1, MaxLength = 60)]
        public string Name
        {

            get
            {
                return (string)this["name"];
            }
            set
            {
                this["name"] = value;
            }
        }

        // Declare an element (not in a collection) of the type
        // UrlConfigElement. In the configuration
        // file it corresponds to <simple .... />.
        [ConfigurationProperty("simple")]
        public UrlConfigElement Simple
        {
            get
            {
                UrlConfigElement url =
                (UrlConfigElement)base["simple"];
                return url;
            }
        }

        // Declare a collection element represented 
        // in the configuration file by the sub-section
        // <urls> <add .../> </urls> 
        // Note: the "IsDefaultCollection = false" 
        // instructs the .NET Framework to build a nested 
        // section like <urls> ...</urls>.
        [ConfigurationProperty("urls",
            IsDefaultCollection = false)]
        public UrlsCollection Urls
        {
            get
            {
                UrlsCollection urlsCollection =
                (UrlsCollection)base["urls"];
                return urlsCollection;
            }
        }

        protected override void DeserializeSection(
            System.Xml.XmlReader reader)
        {
            base.DeserializeSection(reader);
            // You can add custom processing code here.
        }

        protected override string SerializeSection(
            ConfigurationElement parentElement,
            string name, ConfigurationSaveMode saveMode)
        {
            string s =
                base.SerializeSection(parentElement,
                name, saveMode);
            // You can add custom processing code here.
            return s;
        }
    }
}
Imports System.Configuration
Imports System.Collections

' Define a custom section containing an individual
' element and a collection of elements.
Public Class UrlsSection
    Inherits ConfigurationSection

    <ConfigurationProperty("name", _
        DefaultValue:="MyFavorites", _
        IsRequired:=True, _
        IsKey:=False), _
        StringValidator( _
        InvalidCharacters:=" ~!@#$%^&*()[]{}/;'""|\", _
        MinLength:=1, MaxLength:=60)> _
        Public Property Name() As String

        Get
            Return CStr(Me("name"))
        End Get
        Set(ByVal value As String)
            Me("name") = value
        End Set
    End Property
    
    ' Declare an element (not in a collection) of the type
    ' UrlConfigElement. In the configuration
    ' file it corresponds to <simple .... />.
    <ConfigurationProperty("simple")> _
        Public ReadOnly Property Simple() _
        As UrlConfigElement

        Get
            Dim url As UrlConfigElement = _
                CType(Me("simple"),  _
                UrlConfigElement)
            Return url
        End Get
    End Property
    
    ' Declare a collection element represented 
    ' in the configuration file by the sub-section
    ' <urls> <add .../> </urls> 
    ' Note: the "IsDefaultCollection = false" 
    ' instructs the .NET Framework to build a nested 
    ' section like <urls> ...</urls>.
    <ConfigurationProperty("urls", _
        IsDefaultCollection:=False)> _
        Public ReadOnly Property Urls() _
        As UrlsCollection

        Get
            Dim urlsCollection _
                As UrlsCollection = _
                CType(Me("urls"), UrlsCollection)
            Return urlsCollection
        End Get
    End Property

    Protected Overrides Sub DeserializeSection( _
        ByVal reader As System.Xml.XmlReader)

        MyBase.DeserializeSection(reader)
        ' Enter your custom processing code here.
    End Sub

    Protected Overrides Function SerializeSection( _
        ByVal parentElement As ConfigurationElement, _
        ByVal name As String, _
        ByVal saveMode As ConfigurationSaveMode) As String

        Dim s As String = _
            MyBase.SerializeSection(parentElement, _
            name, saveMode)
        ' Enter your custom processing code here.
        Return s
    End Function 'SerializeSection
End Class
using System;
using System.Configuration;
using System.Collections;

namespace Samples.AspNet
{
    public class UrlsCollection : ConfigurationElementCollection
    {
        public UrlsCollection()
        {
            // Add one url to the collection.  This is
            // not necessary; could leave the collection 
            // empty until items are added to it outside
            // the constructor.
            UrlConfigElement url = 
                (UrlConfigElement)CreateNewElement();
            Add(url);
        }

        public override 
            ConfigurationElementCollectionType CollectionType
        {
            get
            {
                return 

                    ConfigurationElementCollectionType.AddRemoveClearMap;
            }
        }

        protected override 
            ConfigurationElement CreateNewElement()
        {
            return new UrlConfigElement();
        }

        protected override 
            ConfigurationElement CreateNewElement(
            string elementName)
        {
            return new UrlConfigElement(elementName);
        }

        protected override Object 
            GetElementKey(ConfigurationElement element)
        {
            return ((UrlConfigElement)element).Name;
        }

        public new string AddElementName
        {
            get
            { return base.AddElementName; }

            set
            { base.AddElementName = value; }
        }

        public new string ClearElementName
        {
            get
            { return base.ClearElementName; }

            set
            { base.ClearElementName = value; }
        }

        public new string RemoveElementName
        {
            get
            { return base.RemoveElementName; }
        }

        public new int Count
        {
            get { return base.Count; }
        }

        public UrlConfigElement this[int index]
        {
            get
            {
                return (UrlConfigElement)BaseGet(index);
            }
            set
            {
                if (BaseGet(index) != null)
                {
                    BaseRemoveAt(index);
                }
                BaseAdd(index, value);
            }
        }

        new public UrlConfigElement this[string Name]
        {
            get
            {
                return (UrlConfigElement)BaseGet(Name);
            }
        }

        public int IndexOf(UrlConfigElement url)
        {
            return BaseIndexOf(url);
        }

        public void Add(UrlConfigElement url)
        {
            BaseAdd(url);
            // Add custom code here.
        }

        protected override void 
            BaseAdd(ConfigurationElement element)
        {
            BaseAdd(element, false);
            // Add custom code here.
        }

        public void Remove(UrlConfigElement url)
        {
            if (BaseIndexOf(url) >= 0)
                BaseRemove(url.Name);
        }

        public void RemoveAt(int index)
        {
            BaseRemoveAt(index);
        }

        public void Remove(string name)
        {
            BaseRemove(name);
        }

        public void Clear()
        {
            BaseClear();
            // Add custom code here.
        }
    }
}
Imports System.Configuration
Imports System.Collections

Public Class UrlsCollection
    Inherits ConfigurationElementCollection

    Public Sub New()
        ' Add one url to the collection.  This is
        ' not necessary; could leave the collection 
        ' empty until items are added to it outside
        ' the constructor.
        Dim url As UrlConfigElement = _
            CType(CreateNewElement(), UrlConfigElement)
        ' Add the element to the collection.
        Add(url)
    End Sub

    Public Overrides ReadOnly Property CollectionType() _
        As ConfigurationElementCollectionType

        Get
            Return ConfigurationElementCollectionType.AddRemoveClearMap
        End Get
    End Property

    Protected Overloads Overrides Function CreateNewElement() _
        As ConfigurationElement

        Return New UrlConfigElement()
    End Function 'CreateNewElement

    Protected Overloads Overrides Function CreateNewElement( _
        ByVal elementName As String) _
        As ConfigurationElement

        Return New UrlConfigElement(elementName)
    End Function 'CreateNewElement

    Protected Overrides Function GetElementKey( _
        ByVal element As ConfigurationElement) As [Object]

        Return CType(element, UrlConfigElement).Name
    End Function 'GetElementKey

    Public Shadows Property AddElementName() As String

        Get
            Return MyBase.AddElementName
        End Get

        Set(ByVal value As String)
            MyBase.AddElementName = value
        End Set
    End Property

    Public Shadows Property ClearElementName() As String
        Get
            Return MyBase.ClearElementName
        End Get

        Set(ByVal value As String)
            MyBase.ClearElementName = value
        End Set
    End Property

    Public Shadows ReadOnly Property RemoveElementName() As String
        Get
            Return MyBase.RemoveElementName
        End Get
    End Property

    Public Shadows ReadOnly Property Count() As Integer
        Get
            Return MyBase.Count
        End Get
    End Property

    Default Public Shadows Property Item( _
    ByVal index As Integer) As UrlConfigElement
        Get
            Return CType(BaseGet(index), UrlConfigElement)
        End Get

        Set(ByVal value As UrlConfigElement)
            If Not (BaseGet(index) Is Nothing) Then
                BaseRemoveAt(index)
            End If
            BaseAdd(index, value)
        End Set
    End Property

    Default Public Shadows ReadOnly Property Item( _
        ByVal Name As String) As UrlConfigElement

        Get
            Return CType(BaseGet(Name), UrlConfigElement)
        End Get
    End Property

    Public Function IndexOf( _
        ByVal url As UrlConfigElement) As Integer

        Return BaseIndexOf(url)
    End Function 'IndexOf

    Public Sub Add(ByVal url As UrlConfigElement)
        BaseAdd(url)
        ' Add custom code here.
    End Sub

    Protected Overrides Sub BaseAdd( _
    ByVal element As ConfigurationElement)
        BaseAdd(element, False)
        ' Add custom code here.
    End Sub

    Public Overloads Sub Remove( _
        ByVal url As UrlConfigElement)

        If BaseIndexOf(url) >= 0 Then
            BaseRemove(url.Name)
        End If
    End Sub

    Public Sub RemoveAt(ByVal index As Integer)
        BaseRemoveAt(index)
    End Sub

    Public Overloads Sub Remove(ByVal name As String)
        BaseRemove(name)
    End Sub

    Public Sub Clear()
        BaseClear()
    End Sub
End Class
using System;
using System.Configuration;
using System.Collections;

namespace Samples.AspNet
{
    public class UrlConfigElement : ConfigurationElement
    {
        // Constructor allowing name, url, and port to be specified.
        public UrlConfigElement(String newName,
            String newUrl, int newPort)
        {
            Name = newName;
            Url = newUrl;
            Port = newPort;
        }

        // Default constructor, will use default values as defined
        // below.
        public UrlConfigElement()
        {
        }

        // Constructor allowing name to be specified, will take the
        // default values for url and port.
        public UrlConfigElement(string elementName)
        {
            Name = elementName;
        }

        [ConfigurationProperty("name", 
            DefaultValue = "Microsoft",
            IsRequired = true, 
            IsKey = true)]
        public string Name
        {
            get
            {
                return (string)this["name"];
            }
            set
            {
                this["name"] = value;
            }
        }

        [ConfigurationProperty("url",
            DefaultValue = "http://www.microsoft.com",
            IsRequired = true)]
        [RegexStringValidator(@"\w+:\/\/[\w.]+\S*")]
        public string Url
        {
            get
            {
                return (string)this["url"];
            }
            set
            {
                this["url"] = value;
            }
        }

        [ConfigurationProperty("port",
            DefaultValue = (int)0,
            IsRequired = false)]
        [IntegerValidator(MinValue = 0,
            MaxValue = 8080, ExcludeRange = false)]
        public int Port
        {
            get
            {
                return (int)this["port"];
            }
            set
            {
                this["port"] = value;
            }
        }

        protected override void DeserializeElement(
           System.Xml.XmlReader reader, 
            bool serializeCollectionKey)
        {
            base.DeserializeElement(reader, 
                serializeCollectionKey);
            // You can your custom processing code here.
        }

        protected override bool SerializeElement(
            System.Xml.XmlWriter writer, 
            bool serializeCollectionKey)
        {
            bool ret = base.SerializeElement(writer, 
                serializeCollectionKey);
            // You can enter your custom processing code here.
            return ret;
        }

        protected override bool IsModified()
        {
            bool ret = base.IsModified();
            // You can enter your custom processing code here.
            return ret;
        }
    }
}
Imports System.Configuration
Imports System.Collections

Public Class UrlConfigElement
    Inherits ConfigurationElement

    ' Constructor allowing name, url, and port to be specified.
    Public Sub New(ByVal newName As String, _
        ByVal newUrl As String, _
        ByVal newPort As Integer)

        Name = newName
        Url = newUrl
        Port = newPort

    End Sub

    ' Default constructor, will use default values as defined
    Public Sub New()

    End Sub


    ' Constructor allowing name to be specified, will take the
    ' default values for url and port.
    Public Sub New(ByVal elementName As String)
        Name = elementName

    End Sub


    <ConfigurationProperty("name", _
        DefaultValue:="Microsoft", _
        IsRequired:=True, _
        IsKey:=True)> _
        Public Property Name() As String

        Get
            Return CStr(Me("name"))
        End Get
        Set(ByVal value As String)
            Me("name") = value
        End Set
    End Property


    <ConfigurationProperty("url", _
        DefaultValue:="http://www.microsoft.com", _
        IsRequired:=True), _
        RegexStringValidator("\w+:\/\/[\w.]+\S*")> _
        Public Property Url() As String

        Get
            Return CStr(Me("url"))
        End Get
        Set(ByVal value As String)
            Me("url") = value
        End Set
    End Property


    <ConfigurationProperty("port", _
        DefaultValue:=0, _
        IsRequired:=False), _
        IntegerValidator(MinValue:=0, _
        MaxValue:=8080, ExcludeRange:=False)> _
        Public Property Port() As Integer

        Get
            Return Fix(Me("port"))
        End Get
        Set(ByVal value As Integer)
            Me("port") = value
        End Set
    End Property


    Protected Overrides Sub DeserializeElement(ByVal reader _
        As System.Xml.XmlReader, _
        ByVal serializeCollectionKey As Boolean)

        MyBase.DeserializeElement(reader, _
            serializeCollectionKey)
        ' Enter your custom processing code here.
    End Sub

    Protected Overrides Function SerializeElement(ByVal writer _
        As System.Xml.XmlWriter, _
        ByVal serializeCollectionKey As Boolean) As Boolean

        Dim ret As Boolean = _
            MyBase.SerializeElement(writer, serializeCollectionKey)
        ' Enter your custom processing code here.
        Return ret
    End Function 'SerializeElement

    Protected Overrides Function IsModified() As Boolean
        Dim ret As Boolean = MyBase.IsModified()
        ' Enter your custom processing code here.
        Return ret

    End Function 'IsModified
End Class

설명

ConfigurationElement은 Web.config와 같은 구성 파일의 XML 요소를 나타내는 데 사용 되는 추상 클래스입니다.The ConfigurationElement is an abstract class that is used to represent an XML element in a configuration file (such as Web.config). 구성 파일의 요소 0, 1 또는 더 많은 자식 요소를 포함할 수 있습니다.An element in a configuration file can contain zero, one, or more child elements.

ConfigurationElement 클래스는 abstract로 정의 되므로이 클래스의 인스턴스를 만들 수 없습니다.Because the ConfigurationElement class is defined as abstract, you cannot create an instance of it. 클래스 에서만 파생할 수 있습니다.You can only derive classes from it. .NET Framework에는 ConfigurationSection와 같은 표준 XML 구성 요소를 나타내기 위해 ConfigurationElement 클래스에서 파생 되는 클래스가 포함 되어 있습니다.The .NET Framework includes classes that derive from the ConfigurationElement class in order to represent standard XML configuration elements, such as ConfigurationSection. ConfigurationElement 클래스를 확장 하 여 사용자 지정 구성 요소 및 섹션에 액세스할 수도 있습니다.You can also extend the ConfigurationElement class to access custom configuration elements and sections. 이 항목의 뒷부분에 포함 된 예제에서는 ConfigurationElement에서 파생 된 사용자 지정 클래스를 사용 하 여 사용자 지정 구성 요소 및 섹션에 액세스 하는 방법을 보여 줍니다.The example included later in this topic shows how to access custom configuration elements and sections by using custom classes that derive from ConfigurationElement.

ConfigurationElement, ConfigurationElementCollection, ConfigurationProperty, ConfigurationSection등의 표준 구성 유형도 확장할 수 있습니다.You can also extend the standard configuration types such as ConfigurationElement, ConfigurationElementCollection, ConfigurationProperty, and ConfigurationSection. 자세한 내용은 이러한 클래스에 대 한 설명서를 참조 하세요.For more information, see the documentation for those classes.

구성 파일의 정보에 액세스 하는 방법에 대 한 자세한 내용은 ConfigurationManager 클래스 및 WebConfigurationManager 클래스를 참조 하세요.For more information about how to access information in configuration files, see the ConfigurationManager class and the WebConfigurationManager class.

구현자 참고

모든 ConfigurationElement 개체는 요소 특성 또는 자식 요소 컬렉션을 나타내는 ConfigurationProperty 개체의 내부 ConfigurationPropertyCollection 컬렉션을 만듭니다.Every ConfigurationElement object creates an internal ConfigurationPropertyCollection collection of ConfigurationProperty objects that represents either the element attributes or a collection of child elements.

사용자 지정할 수 없는 정보 및 기능은 ElementInformation 속성에서 제공 하는 ElementInformation 개체에 포함 됩니다.Non-customizable information and functionality is contained by an ElementInformation object provided by the ElementInformation property.

프로그래밍 방식으로 또는 선언적 (특성 사용된) 코딩 모델 사용자 지정 구성 요소를 만드는 데 사용할 수 있습니다.You can use either a programmatic or a declarative (attributed) coding model to create a custom configuration element: -프로그래밍 모델을 사용 하려면 각 요소 특성에 대해 속성을 만들어 해당 값을 가져오거나 설정 하 고 기본 ConfigurationElement 기본 클래스의 내부 속성 모음에 추가 해야 합니다.- The programmatic model requires that for each element attribute, you create a property to get or set its value and add it to the internal property bag of the underlying ConfigurationElement base class. 이 모델을 사용 하는 방법에 대 한 예제는 ConfigurationSection 클래스를 참조 하세요.For an example of how to use this model, see the ConfigurationSection class.

-간단한 선언적도 라는 모델 특성이 지정 된 모델 속성을 사용 하 여 요소 특성을 정의 하 고 다음 특성으로 데코레이팅 할 수 있습니다.- The simpler declarative model, also called the attributed model, allows you to define an element attribute by using a property and then decorate it with attributes. 이러한 특성은 속성 형식과 해당 기본값에 대 한 ASP.NET 구성 시스템을 지시합니다.These attributes instruct the ASP.NET configuration system about the property types and their default values. ASP.NET 구성 시스템에서는 리플렉션을 통해 가져온이 정보를 사용 하 여 요소 속성 개체를 만들고 필요한 초기화를 수행 합니다.With this information, obtained through reflection, the ASP.NET configuration system creates the element property objects for you and performs the required initialization. 이 항목의 뒷부분에 나오는 예제에는이 모델을 사용 하는 방법을 보여 줍니다.The example shown later in this topic shows how to use this model.

생성자

ConfigurationElement()

ConfigurationElement 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ConfigurationElement class.

속성

CurrentConfiguration

현재 Configuration 인스턴스가 속해 있는 구성 계층 구조를 나타내는 최상위 ConfigurationElement 인스턴스에 대한 참조를 가져옵니다.Gets a reference to the top-level Configuration instance that represents the configuration hierarchy that the current ConfigurationElement instance belongs to.

ElementInformation

ElementInformation 개체의 사용자 지정할 수 없는 정보와 기능을 포함하는 ConfigurationElement 개체를 가져옵니다.Gets an ElementInformation object that contains the non-customizable information and functionality of the ConfigurationElement object.

ElementProperty

ConfigurationElementProperty 개체 자체를 나타내는 ConfigurationElement 개체를 가져옵니다.Gets the ConfigurationElementProperty object that represents the ConfigurationElement object itself.

EvaluationContext

ContextInformation 개체의 ConfigurationElement 개체를 가져옵니다.Gets the ContextInformation object for the ConfigurationElement object.

HasContext

CurrentConfiguration 속성이 null인지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the CurrentConfiguration property is null.

Item[ConfigurationProperty]

속성 또는이 구성 요소의 특성 값을 가져오거나 설정 합니다.Gets or sets a property or attribute of this configuration element.

Item[String]

이 구성 요소의 속성, 특성 또는 자식 요소를 가져오거나 설정합니다.Gets or sets a property, attribute, or child element of this configuration element.

LockAllAttributesExcept

잠긴된 특성의 컬렉션을 가져옵니다.Gets the collection of locked attributes.

LockAllElementsExcept

잠긴 요소의 컬렉션을 가져옵니다.Gets the collection of locked elements.

LockAttributes

잠긴된 특성의 컬렉션을 가져옵니다.Gets the collection of locked attributes.

LockElements

잠긴 요소의 컬렉션을 가져옵니다.Gets the collection of locked elements.

LockItem

요소가 잠겨 있는지 여부를 나타내는 값을 가져오거나 설정 합니다.Gets or sets a value indicating whether the element is locked.

Properties

속성 컬렉션을 가져옵니다.Gets the collection of properties.

메서드

DeserializeElement(XmlReader, Boolean)

구성 파일에서 XML을 읽습니다.Reads XML from the configuration file.

Equals(Object)

현재 ConfigurationElement 인스턴스를 지정된 개체와 비교합니다.Compares the current ConfigurationElement instance to the specified object.

GetHashCode()

현재 ConfigurationElement 인스턴스를 나타내는 고유 값을 가져옵니다.Gets a unique value representing the current ConfigurationElement instance.

GetTransformedAssemblyString(String)

지정 된 어셈블리 이름의 변환된 된 버전을 반환 합니다.Returns the transformed version of the specified assembly name.

GetTransformedTypeString(String)

지정 된 형식 이름의 변환된 된 버전을 반환 합니다.Returns the transformed version of the specified type name.

GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
Init()

ConfigurationElement 개체를 초기 상태로 설정합니다.Sets the ConfigurationElement object to its initial state.

InitializeDefault()

ConfigurationElement 개체 값의 기본 집합을 초기화하는 데 사용됩니다.Used to initialize a default set of values for the ConfigurationElement object.

IsModified()

파생 클래스에서 구현될 때 이 구성 요소가 마지막으로 저장되거나 로드된 이후 수정되었는지 여부를 나타냅니다.Indicates whether this configuration element has been modified since it was last saved or loaded, when implemented in a derived class.

IsReadOnly()

ConfigurationElement 개체가 읽기 전용인지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the ConfigurationElement object is read-only.

ListErrors(IList)

ConfigurationElement 개체와 모든 하위 요소의 잘못된 속성 오류를 전달된 목록에 추가합니다.Adds the invalid-property errors in this ConfigurationElement object, and in all subelements, to the passed list.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
OnDeserializeUnrecognizedAttribute(String, String)

역직렬화 하는 동안 알 수 없는 특성은 발견 했는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether an unknown attribute is encountered during deserialization.

OnDeserializeUnrecognizedElement(String, XmlReader)

역직렬화 하는 동안 알 수 없는 요소가 발견 될 지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether an unknown element is encountered during deserialization.

OnRequiredPropertyNotFound(String)

필수 속성을 찾을 수 없으면 예외가 throw 됩니다.Throws an exception when a required property is not found.

PostDeserialize()

deserialization 후에 호출됩니다.Called after deserialization.

PreSerialize(XmlWriter)

Serialization 전에 호출 됩니다.Called before serialization.

Reset(ConfigurationElement)

잠금 및 속성 컬렉션을 비롯하여 ConfigurationElement 개체의 내부 상태를 다시 설정합니다.Resets the internal state of the ConfigurationElement object, including the locks and the properties collections.

ResetModified()

파생 클래스에서 구현되는 경우 IsModified() 메서드의 값을 false로 다시 설정합니다.Resets the value of the IsModified() method to false when implemented in a derived class.

SerializeElement(XmlWriter, Boolean)

파생된 클래스에서 구현 되는 경우 구성 파일에이 구성 요소의 내용을 씁니다.Writes the contents of this configuration element to the configuration file when implemented in a derived class.

SerializeToXmlElement(XmlWriter, String)

파생된 클래스에서 구현 되는 경우 구성 파일에이 구성 요소의 외부 태그를 씁니다.Writes the outer tags of this configuration element to the configuration file when implemented in a derived class.

SetPropertyValue(ConfigurationProperty, Object, Boolean)

지정된 된 값으로 속성을 설정합니다.Sets a property to the specified value.

SetReadOnly()

IsReadOnly() 개체와 모든 하위 요소에 대한 ConfigurationElement 속성을 설정합니다.Sets the IsReadOnly() property for the ConfigurationElement object and all subelements.

ToString()

현재 개체를 나타내는 string을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)
Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode)

ConfigurationElement 개체를 수정하여 저장되지 않아야 하는 값을 모두 제거합니다.Modifies the ConfigurationElement object to remove all values that should not be saved.

적용 대상

추가 정보