Classes Usadas para Criar Manipuladores de Seção Personalizados
Se nenhum das seções de configuração existentes atender às suas necessidades, você pode criar seções personalizadas e implementar manipuladores para ler e gravar dados de configuração.O manipulador deve ser uma classe do .NET Framework que estende a classe ConfigurationSection.
Observação: |
---|
Nas versões do .NET Framework 1.0 e 1.1, um manipulador da seção de configuração tinha que implementam a interface IConfigurationSectionHandler, que ainda tem suporte no .NET Framework versão 2.0, mas é substituída. |
Manipuladores de seção personalizada podem ser implementadas usando um dos dois modelos de implementação: o modelo de programação ou o modelo declarativo.
Modelo de Implementação Através de Programação
Este modelo requer que para cada atributo da seção você cria uma propriedade para obter e / ou definir seu valor e adicioná-la à coleção de propriedades internas da classe base ConfigurationElement subjacente.
Modelo de Implementação Declarativa
Nesse modelo, que também é chamado modelo de atributo, permite que você defina um atributo seção usando uma propriedade e configurando atributos.Esses atributos instruem o sistema de configuração ASP.NET sobre os tipos de propriedades e seus valores padrão.Com essas informações, que são obtidas através de Reflexão, o sistema de configuração do ASP.NET cria a seção propriedades de objetos e realiza a inicialização necessária.Para obter mais informações sobre reflexão, consulte Visão geral de reflexão.
Classes Usadas para Criar Manipuladores de Seção Personalizados
A tabela a seguir lista as classes que são usadas para criar manipuladores de seção personalizados por programação.
Em cada um dos tópicos de classe, existem exemplos detalhados de código usando um ou ambos os modelos de implementação.Além disso, você pode exibir um exemplo de código declarativo simplificado no Como: Criar usando ConfigurationSection Custom configuração Sections.
Classes usadas para implementar um manipulador de seção |
Descrição |
---|---|
Classe ConfigurationSection |
Representa uma seção em um arquivo de configuração. Use o ConfigurationSection para implementar um tipo personalizado de seção do manipulador.Estender a classe ConfigurationSection para fornecer manipulação personalizada e acesso programático a seções de configuração personalizadas. Uma seção registra seu tipo de manipulador com uma entrada no elemento configSections de um arquivo de configuração. |
Representa uma coleção das seções relacionadas dentro de um arquivo de configuração. Use a ConfigurationSectionCollection na criação de tipos personalizados que estendam a classe ConfigurationSection.Além disso, use-o ao ler um arquivo de configuração programaticamente através de um conjunto de objetos ConfigurationSection. |
|
Representa uma coleção de elementos em um arquivo de configuração. Use o ConfigurationElementCollection para trabalhar com uma coleção de objetos ConfigurationElement.Implemente esta classe para adicionar uma coleção de elementos ConfigurationElement personalizados a ConfigurationSection. |
|
Classe ConfigurationElement |
Representa um elemento em um arquivo de configuração. Use o ConfigurationElement como uma classe base para as classes que representam elementos de configuração XML, por exemplo, ConfigurationSection. Você pode estender a classe ConfigurationElement para representar um elemento de configuração em um ConfigurationSection.Você também pode criar um ConfigurationElementCollection dos elementos ConfigurationElement.Cada objeto ConfigurationElement cria uma coleção ConfigurationPropertyCollection interna de objetos ConfigurationProperty que representa os atributos do elemento ou uma coleção de elementos filho. |
Declarativamente instrui o .NET Framework para instanciar uma coleção de propriedades do elemento de configuração. Use o ConfigurationCollectionAttribute para adicionar atributos a uma propriedade ConfigurationElementCollection.Isso instrui o .NET Framework para criar uma instância da propriedade e inicializá-la usando os valores ConfigurationElement personalizados. |
|
A classe ConfigurationPropertyCollection representa a coleção de objetos ConfigurationProperty que podem ser atributos ou objetos ConfigurationElement de um elemento de configuração. |
|
Classe ConfigurationProperty |
Representa um atributo ou um elemento de configuração filho.No caso de um simples ConfigurationElement, os objetos ConfigurationProperty representam atributos.No caso de elementos de configuração mais complexos como uma seção que contém subseções, os objetos ConfigurationProperty podem representar objetos ConfigurationElement bem como atributos. A classe ConfigurationProperty representa uma definição de configuração individual.Esta classe permite que você obtenha ou defina o nome, tipo e valor padrão para uma determinada entidade de configuração (elemento ou atributo) e especifique se o atributo é necessário, é uma coleção de chaves ou representa uma coleção de elementos padrão. |
Declarativamente instrui o .NET Framework para instanciar uma propriedade do elemento de configuração. Você usa o ConfigurationPropertyAttribute para decorar uma propriedade do elemento de configuração.Isso instrui o .NET Framework para criar uma instância e inicializar a propriedade utilizando o valor do parâmetro de decoração. |
Consulte também
Tarefas
Como: Criar usando ConfigurationSection Custom configuração Sections
Como: Criar Custom configuração Sections usando IConfigurationSectionHandler
Conceitos
ASP.NET Configuration File Structure (Sections and Section Handlers)