Freigeben über


ConfigurationBuilder Klasse

Definition

Stellt die Basisklasse dar, die durch benutzerdefinierte Konfigurations-Generator-Implementierungen erweitert werden soll.

public ref class ConfigurationBuilder abstract : System::Configuration::Provider::ProviderBase
public abstract class ConfigurationBuilder : System.Configuration.Provider.ProviderBase
type ConfigurationBuilder = class
    inherit ProviderBase
Public MustInherit Class ConfigurationBuilder
Inherits ProviderBase
Vererbung
ConfigurationBuilder

Beispiele

Das folgende Beispiel zeigt, wie Sie einen einfachen ConfigurationBuilder zum Lesen von Umgebungsvariablen implementieren:

using System;
using System.Configuration;
using System.Xml;

namespace Samples.AspNet.Config
{

   public class SampleConfigurationBuilder : ConfigurationBuilder
    {

        public override XmlNode ProcessRawXml(XmlNode rawXml) 
        {

            string rawXmlString = rawXml.OuterXml;

            if (String.IsNullOrEmpty(rawXmlString)) {
                return rawXml;
            }

            rawXmlString = Environment.ExpandEnvironmentVariables(rawXmlString);

            XmlDocument doc = new XmlDocument();
            doc.PreserveWhitespace = true;
            doc.LoadXml(rawXmlString);
            return doc.DocumentElement;
        }

        public override ConfigurationSection ProcessConfigurationSection(ConfigurationSection configSection) 
            => configSection;
    }
}
Imports System.Configuration
Imports System.Xml

Public Class SampleConfigurationBuilder : Inherits ConfigurationBuilder

    Public Overrides Function ProcessRawXml(rawXml As XmlNode)  As XmlNode

        Dim rawXmlString As String = rawXml.OuterXml

        If String.IsNullOrEmpty(rawXmlString) Then
            Return rawXml
        End If

        rawXmlString = Environment.ExpandEnvironmentVariables(rawXmlString)

        Dim doc As New XmlDocument()
        doc.PreserveWhitespace = True
        doc.LoadXml(rawXmlString)
        Return doc.DocumentElement
    End Function

    Public Overrides Function ProcessConfigurationSection(configSection As ConfigurationSection)  As ConfigurationSection
       Return configSection
    End Function

End Class

Das folgende Beispiel ist ein Auszug der Konfigurationsdatei, da sie für das vorherige Beispiel gilt. Dies wendet Umgebungsvariablen auf die appSettings-Konfiguration an und stellt diese Werte unter ConfigurationManager.AppSettings.

<!-- To declare and use Configuration Builders in your configuration chain, update your app.config or web.config file as follows:  -->

<configSections>
  <section name="configBuilders" type="System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false"/>
</configSections>

<configBuilders>
  <builders>
    <add name="SampleConfigurationBuilder" type="CustomConfigBuilders.MyConfigBuilder, CustomConfigBuilders" />
  </builders>
</configBuilders>

<!-- To apply Configuration Builders to a configuration section, use the 'configBuilders' tag as follows:  -->
<appSettings configBuilders="SampleConfigurationBuilder">
  <add key="COMPUTERNAME" value="Will Be Replaced by EnvironmentVariable" />
</appSettings>

Hinweise

Leiten Sie diese Klasse ab, um die Konfiguration aus einer externen Quelle zu lesen, die Sie in Ihrer .NET Framework-Anwendung mit der Standard-API ConfigurationManager verwenden möchten.

Konstruktoren

Name Beschreibung
ConfigurationBuilder()

Initialisiert eine neue Instanz der ConfigurationBuilder-Klasse.

Eigenschaften

Name Beschreibung
Description

Ruft eine kurze, benutzerfreundliche Beschreibung ab, die für die Anzeige in Verwaltungstools oder anderen Benutzeroberflächen (UIs) geeignet ist.

(Geerbt von ProviderBase)
Name

Ruft den Anzeigenamen ab, der verwendet wird, um während der Konfiguration auf den Anbieter zu verweisen.

(Geerbt von ProviderBase)

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
Initialize(String, NameValueCollection)

Initialisiert den Konfigurations-Generator.

(Geerbt von ProviderBase)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ProcessConfigurationSection(ConfigurationSection)

Akzeptiert ein ConfigurationSection Objekt aus dem Konfigurationssystem und gibt ein geändertes oder neues ConfigurationSection Objekt zur weiteren Verwendung zurück.

ProcessRawXml(XmlNode)

Akzeptiert eine XmlNode Darstellung des Unformatierten Konfigurationsabschnitts aus einer Konfigurationsdatei und gibt eine geänderte oder neue XmlNode zur weiteren Verwendung zurück.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: