ConfigurationElement ConfigurationElement ConfigurationElement ConfigurationElement Class

Definition

Stellt ein Konfigurationselement innerhalb einer Konfigurationsdatei dar.Represents a configuration element within a configuration file.

public ref class ConfigurationElement abstract
public abstract class ConfigurationElement
type ConfigurationElement = class
Public MustInherit Class ConfigurationElement
Vererbung
ConfigurationElementConfigurationElementConfigurationElementConfigurationElement
Abgeleitet

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie zur Implementierung eines benutzerdefinierten ConfigurationElement sowohl als ein einzelnes Element in einem benutzerdefinierten Abschnitt eine Auflistung von Elementen in einem benutzerdefinierten Abschnitt.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. Das Beispiel umfasst die folgenden Dateien:The example consists of the following files:

  • Eine app.config-Datei, die einen benutzerdefinierten Abschnitt enthält, mit dem Namen MyUrls.An app.config file that contains a custom section that is named MyUrls. Dieser Abschnitt enthält ein einfaches Element (es enthält keine anderen Elemente) und eine Auflistung von Elementen.This section contains a simple element (it does not contain any other elements) and a collection of elements. Einfache Element heißt simple und die Auflistung heißt urls.The simple element is named simple and the collection is named urls.

  • Eine Konsolenanwendung.A console application. Die Anwendung liest den Inhalt der Datei "App.config", und die Informationen in die Konsole geschrieben.The application reads the contents of the app.config file and writes the information to the console. Wird von abgeleiteten Klassen ConfigurationElement, ConfigurationElementCollection, und ConfigurationSection.It uses classes that derive from ConfigurationElement, ConfigurationElementCollection, and ConfigurationSection.

  • Eine Klasse namens UrlsSection abgeleitet, die die ConfigurationSection Klasse.A class named UrlsSection that derives from the ConfigurationSection class. Diese Klasse wird verwendet, für den Zugriff auf die MyUrls Abschnitt in der Konfigurationsdatei.This class is used to access the MyUrls section in the configuration file.

  • Eine Klasse namens UrlsCollection abgeleitet, die die ConfigurationElementCollection Klasse.A class named UrlsCollection that derives from the ConfigurationElementCollection class. Diese Klasse wird verwendet, für den Zugriff auf die urls Auflistung in der Konfigurationsdatei.This class is used to access the urls collection in the configuration file.

  • Eine Klasse namens UrlConfigElement abgeleitet, die die ConfigurationElement Klasse.A class named UrlConfigElement that derives from the ConfigurationElement class. Diese Klasse wird verwendet, für den Zugriff auf die simple -Element und die Mitglieder der der urls Auflistung in der Konfigurationsdatei.This class is used to access the simple element and the members of the urls collection in the configuration file.

Um das Beispiel auszuführen, führen Sie die folgenden Schritte aus:To run the example, perform the following steps:

  1. Erstellen einer Lösung, bei dem ein Konsolenanwendungsprojekt, und ein Klassenbibliotheksprojekt mit dem Namen ConfigurationElement.Create a solution that has a console application project and a class library project that is named ConfigurationElement.

  2. Legen Sie die drei Klassendateien in das Klassenbibliotheksprojekt aus, und legen Sie die anderen Dateien in der Konsole-Bibliotheksprojekt.Put the three class files in the class library project and put the other files in the console library project.

  3. In beiden Projekten legen Sie einen Verweis auf System.Configuration.In both projects set a reference to System.Configuration.

  4. Legen Sie in der Konsole Anwendungsprojekt einen Projektverweis auf das Klassenbibliotheksprojekt hinzu.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
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
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 'DeserializeSection

    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 'UrlsSection 
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
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 'New

    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 'Add

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

    Public Overloads Sub Remove( _
        ByVal url As UrlConfigElement)

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

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

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

    Public Sub Clear()
        BaseClear()
    End Sub 'Clear ' 
End Class 'UrlsCollection
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
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 'New

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

    End Sub 'New


    ' 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 'New


    <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 'DeserializeElement

    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 'UrlConfigElement 

Hinweise

Die ConfigurationElement ist eine abstrakte Klasse, die verwendet wird, ein XML-Element in einer Konfigurationsdatei (z. B. "Web.config") dargestellt.The ConfigurationElement is an abstract class that is used to represent an XML element in a configuration file (such as Web.config). Ein Element in einer Konfigurationsdatei kann 0 (null), eine oder mehrere untergeordnete Elemente enthalten.An element in a configuration file can contain zero, one, or more child elements.

Da die ConfigurationElement Klasse als abstrakt definiert ist, können Sie keine Instanz davon erstellen.Because the ConfigurationElement class is defined as abstract, you cannot create an instance of it. Sie können nur Klassen von ihr ableiten.You can only derive classes from it. .NET Framework enthält die von abgeleiteten Klassen der ConfigurationElement Klasse, um die standard-XML-Konfigurationselemente, darstellen, z. B. ConfigurationSection.The .NET Framework includes classes that derive from the ConfigurationElement class in order to represent standard XML configuration elements, such as ConfigurationSection. Sie können auch erweitern, die ConfigurationElement Klasse, um den Zugriff auf benutzerdefinierte Konfigurationselemente und Abschnitte.You can also extend the ConfigurationElement class to access custom configuration elements and sections. Im Beispiel weiter unten in diesem Thema zeigt, wie Zugriff auf die benutzerdefinierte Konfigurationselemente und Abschnitte mit benutzerdefinierten Klassen, die von abgeleitet 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.

Sie können auch die Standardkonfigurationstypen erweitern, z. B. ConfigurationElement, ConfigurationElementCollection, ConfigurationProperty, und ConfigurationSection.You can also extend the standard configuration types such as ConfigurationElement, ConfigurationElementCollection, ConfigurationProperty, and ConfigurationSection. Weitere Informationen finden Sie in der Dokumentation für diese Klassen.For more information, see the documentation for those classes.

Weitere Informationen dazu, wie Sie den Zugriff auf Informationen in Konfigurationsdateien finden Sie unter den ConfigurationManager Klasse und die WebConfigurationManager Klasse.For more information about how to access information in configuration files, see the ConfigurationManager class and the WebConfigurationManager class.

Hinweise für Vererber

Jede ConfigurationElement -Objekt erstellt eine interne ConfigurationPropertyCollection Auflistung von ConfigurationProperty Objekten, das die Attribute des Elements oder einer Auflistung der untergeordneten Elemente darstellt.Every ConfigurationElement object creates an internal ConfigurationPropertyCollection collection of ConfigurationProperty objects that represents either the element attributes or a collection of child elements.

Nicht anpassbaren Informationen und Funktionen enthalten ist ein ElementInformation Objekt bereitgestellt werden, indem die ElementInformation Eigenschaft.Non-customizable information and functionality is contained by an ElementInformation object provided by the ElementInformation property.

Sie können einem programmgesteuerten oder ein deklaratives Modell für das (attributierten) Schreiben von Code verwenden, um ein benutzerdefiniertes Konfigurationselement zu erstellen:You can use either a programmatic or a declarative (attributed) coding model to create a custom configuration element: – Die programmgesteuerte Modell ist es erforderlich, dass für jedes Elementattribut, Sie eine Eigenschaft zum Abrufen erstellen oder legen Sie dessen Wert aus, und fügen sie Sie der internen Eigenschaftensammlung des zugrunde liegenden hinzu ConfigurationElement Basisklasse.- 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. Ein Beispiel zur Verwendung dieses Modells finden Sie unter den ConfigurationSection Klasse.For an example of how to use this model, see the ConfigurationSection class.

– Die einfachere deklaratives Modell, so genannte Modell das attributierte können Sie ein Elementattribut definiert werden, mithilfe einer Eigenschaft, und klicken Sie dann mit Attribute ergänzen.- 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. Diese Attribute weisen das Konfigurationssystem von ASP.NET über die Eigenschaftstypen und deren Standardwerte fest.These attributes instruct the ASP.NET configuration system about the property types and their default values. Mit diesen Informationen erhalten mithilfe von Reflektion ASP.NET-Konfigurationssystem erstellt das Element Property-Objekte und führt die erforderliche Initialisierung.With this information, obtained through reflection, the ASP.NET configuration system creates the element property objects for you and performs the required initialization. Im Beispiel weiter unten in diesem Thema zeigt, wie dieses Modell verwendet wird.The example shown later in this topic shows how to use this model.

Konstruktoren

ConfigurationElement() ConfigurationElement() ConfigurationElement() ConfigurationElement()

Initialisiert eine neue Instanz der ConfigurationElement-Klasse.Initializes a new instance of the ConfigurationElement class.

Eigenschaften

CurrentConfiguration CurrentConfiguration CurrentConfiguration CurrentConfiguration

Ruft einen Verweis auf die Configuration-Instanz der obersten Ebene ab, die die Konfigurationshierarchie darstellt, zu der die aktuelle ConfigurationElement-Instanz gehört.Gets a reference to the top-level Configuration instance that represents the configuration hierarchy that the current ConfigurationElement instance belongs to.

ElementInformation ElementInformation ElementInformation ElementInformation

Ruft ein ElementInformation-Objekt ab, das die nicht anpassbaren Informationen und Funktionen des ConfigurationElement-Objekts enthält.Gets an ElementInformation object that contains the non-customizable information and functionality of the ConfigurationElement object.

ElementProperty ElementProperty ElementProperty ElementProperty

Ruft das ConfigurationElementProperty-Objekt ab, das das ConfigurationElement-Objekt selbst darstellt.Gets the ConfigurationElementProperty object that represents the ConfigurationElement object itself.

EvaluationContext EvaluationContext EvaluationContext EvaluationContext

Ruft das ContextInformation-Objekt für das ConfigurationElement-Objekt ab.Gets the ContextInformation object for the ConfigurationElement object.

HasContext HasContext HasContext HasContext

Ruft einen Wert ab, der angibt, ob die CurrentConfiguration-Eigenschaft null ist.Gets a value that indicates whether the CurrentConfiguration property is null.

Item[ConfigurationProperty] Item[ConfigurationProperty] Item[ConfigurationProperty] Item[ConfigurationProperty]

Ruft eine Eigenschaft oder ein Attribut dieses Konfigurationselements ab oder legt diese bzw. dieses fest.Gets or sets a property or attribute of this configuration element.

Item[String] Item[String] Item[String] Item[String]

Ruft eine Eigenschaft, ein Attribut oder ein untergeordnetes Element dieses Konfigurationselements ab oder legt diese(s) fest.Gets or sets a property, attribute, or child element of this configuration element.

LockAllAttributesExcept LockAllAttributesExcept LockAllAttributesExcept LockAllAttributesExcept

Ruft die Auflistung gesperrter Attribute ab.Gets the collection of locked attributes.

LockAllElementsExcept LockAllElementsExcept LockAllElementsExcept LockAllElementsExcept

Ruft die Auflistung gesperrter Elemente ab.Gets the collection of locked elements.

LockAttributes LockAttributes LockAttributes LockAttributes

Ruft die Auflistung gesperrter Attribute ab.Gets the collection of locked attributes

LockElements LockElements LockElements LockElements

Ruft die Auflistung gesperrter Elemente ab.Gets the collection of locked elements.

LockItem LockItem LockItem LockItem

Ruft einen Wert ab, der angibt, ob das Element gesperrt ist, oder legt diesen fest.Gets or sets a value indicating whether the element is locked.

Properties Properties Properties Properties

Ruft die Auflistung von Eigenschaften ab.Gets the collection of properties.

Methoden

DeserializeElement(XmlReader, Boolean) DeserializeElement(XmlReader, Boolean) DeserializeElement(XmlReader, Boolean) DeserializeElement(XmlReader, Boolean)

Liest XML aus der Konfigurationsdatei.Reads XML from the configuration file.

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

Vergleicht die aktuelle ConfigurationElement-Instanz mit dem angegebenen Objekt.Compares the current ConfigurationElement instance to the specified object.

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

Ruft einen eindeutigen Wert ab, der die aktuelle ConfigurationElement-Instanz darstellt.Gets a unique value representing the current ConfigurationElement instance.

GetTransformedAssemblyString(String) GetTransformedAssemblyString(String) GetTransformedAssemblyString(String) GetTransformedAssemblyString(String)

Gibt die transformierte Version des angegebenen Assemblynamens zurück.Returns the transformed version of the specified assembly name.

GetTransformedTypeString(String) GetTransformedTypeString(String) GetTransformedTypeString(String) GetTransformedTypeString(String)

Gibt die transformierte Version des angegebenen Typnamens zurück.Returns the transformed version of the specified type name.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
Init() Init() Init() Init()

Legt für das ConfigurationElement-Objekt den Ausgangszustand fest.Sets the ConfigurationElement object to its initial state.

InitializeDefault() InitializeDefault() InitializeDefault() InitializeDefault()

Wird verwendet, um einen Standardsatz von Werten für das ConfigurationElement-Objekt zu initialisieren.Used to initialize a default set of values for the ConfigurationElement object.

IsModified() IsModified() IsModified() IsModified()

Gibt an, ob dieses Konfigurationselement geändert wurde, seit es zuletzt gespeichert oder geladen wurde, wenn es in einer abgeleiteten Klasse implementiert wurde.Indicates whether this configuration element has been modified since it was last saved or loaded, when implemented in a derived class.

IsReadOnly() IsReadOnly() IsReadOnly() IsReadOnly()

Ruft einen Wert ab, der angibt, ob das ConfigurationElement-Objekt schreibgeschützt ist.Gets a value indicating whether the ConfigurationElement object is read-only.

ListErrors(IList) ListErrors(IList) ListErrors(IList) ListErrors(IList)

Fügt die Fehler über ungültige Eigenschaften in diesem ConfigurationElement-Objekt und in allen Unterelementen der übergebenen Liste hinzu.Adds the invalid-property errors in this ConfigurationElement object, and in all subelements, to the passed list.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnDeserializeUnrecognizedAttribute(String, String) OnDeserializeUnrecognizedAttribute(String, String) OnDeserializeUnrecognizedAttribute(String, String) OnDeserializeUnrecognizedAttribute(String, String)

Ruft einen Wert ab, der angibt, ob während der Deserialisierung ein unbekanntes Attribut aufgetreten ist.Gets a value indicating whether an unknown attribute is encountered during deserialization.

OnDeserializeUnrecognizedElement(String, XmlReader) OnDeserializeUnrecognizedElement(String, XmlReader) OnDeserializeUnrecognizedElement(String, XmlReader) OnDeserializeUnrecognizedElement(String, XmlReader)

Ruft einen Wert ab, der angibt, ob während der Deserialisierung ein unbekanntes Element aufgetreten ist.Gets a value indicating whether an unknown element is encountered during deserialization.

OnRequiredPropertyNotFound(String) OnRequiredPropertyNotFound(String) OnRequiredPropertyNotFound(String) OnRequiredPropertyNotFound(String)

Löst eine Ausnahme aus, wenn eine erforderliche Eigenschaft nicht gefunden wird.Throws an exception when a required property is not found.

PostDeserialize() PostDeserialize() PostDeserialize() PostDeserialize()

Wird nach der Deserialisierung aufgerufen.Called after deserialization.

PreSerialize(XmlWriter) PreSerialize(XmlWriter) PreSerialize(XmlWriter) PreSerialize(XmlWriter)

Wird vor der Serialisierung aufgerufen.Called before serialization.

Reset(ConfigurationElement) Reset(ConfigurationElement) Reset(ConfigurationElement) Reset(ConfigurationElement)

Setzt den internen Status dieses ConfigurationElement-Objekts zurück, einschließlich der Sperren und der Eigenschaftenauflistungen.Resets the internal state of the ConfigurationElement object, including the locks and the properties collections.

ResetModified() ResetModified() ResetModified() ResetModified()

Setzt bei Implementierung in einer abgeleiteten Klasse den Wert der IsModified()-Methode auf false zurück.Resets the value of the IsModified() method to false when implemented in a derived class.

SerializeElement(XmlWriter, Boolean) SerializeElement(XmlWriter, Boolean) SerializeElement(XmlWriter, Boolean) SerializeElement(XmlWriter, Boolean)

Schreibt bei Implementierung in einer abgeleiteten Klasse den Inhalt dieses Konfigurationselements in die Konfigurationsdatei.Writes the contents of this configuration element to the configuration file when implemented in a derived class.

SerializeToXmlElement(XmlWriter, String) SerializeToXmlElement(XmlWriter, String) SerializeToXmlElement(XmlWriter, String) SerializeToXmlElement(XmlWriter, String)

Schreibt bei Implementierung in einer abgeleiteten Klasse die äußeren Tags dieses Konfigurationselements in die Konfigurationsdatei.Writes the outer tags of this configuration element to the configuration file when implemented in a derived class.

SetPropertyValue(ConfigurationProperty, Object, Boolean) SetPropertyValue(ConfigurationProperty, Object, Boolean) SetPropertyValue(ConfigurationProperty, Object, Boolean) SetPropertyValue(ConfigurationProperty, Object, Boolean)

Legt eine Eigenschaft auf den angegebenen Wert fest.Sets a property to the specified value.

SetReadOnly() SetReadOnly() SetReadOnly() SetReadOnly()

Legt die IsReadOnly()-Eigenschaft für das ConfigurationElement-Objekt und alle Unterelemente fest.Sets the IsReadOnly() property for the ConfigurationElement object and all subelements.

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

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode)

Ändert das ConfigurationElement-Objekt, um alle Werte zu entfernen, die nicht gespeichert werden sollen.Modifies the ConfigurationElement object to remove all values that should not be saved.

Gilt für:

Siehe auch