Compartilhar via


ConfigurationBuilder Classe

Definição

Representa a classe base a ser estendida por implementações personalizadas do construtor de configurações.

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
Herança
ConfigurationBuilder

Exemplos

O exemplo a seguir mostra como implementar um ConfigurationBuilder simples para ler variáveis de ambiente:

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

O exemplo a seguir é um trecho do arquivo de configuração como ele se aplica ao exemplo anterior. Isso aplica variáveis de ambiente à configuração appSettings e disponibiliza esses valores ConfigurationManager.AppSettingsem .

<!-- 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>

Comentários

Deriva dessa classe para ler a configuração de uma fonte externa que você gostaria de consumir em seu aplicativo .NET Framework usando a API padrão ConfigurationManager .

Construtores

Nome Description
ConfigurationBuilder()

Inicializa uma nova instância da classe ConfigurationBuilder.

Propriedades

Nome Description
Description

Obtém uma descrição breve e amigável adequada para exibição em ferramentas administrativas ou em outras interfaces de usuário (UIs).

(Herdado de ProviderBase)
Name

Obtém o nome amigável usado para se referir ao provedor durante a configuração.

(Herdado de ProviderBase)

Métodos

Nome Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Initialize(String, NameValueCollection)

Inicializa o construtor de configurações.

(Herdado de ProviderBase)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
ProcessConfigurationSection(ConfigurationSection)

Aceita um ConfigurationSection objeto do sistema de configuração e retorna um objeto modificado ou novo ConfigurationSection para uso adicional.

ProcessRawXml(XmlNode)

Aceita uma XmlNode seção de configuração bruta representando de um arquivo de configuração e retorna uma modificação ou uma nova XmlNode para uso adicional.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a