Compartir a través de


Clases utilizadas para crear identificadores de sección personalizados

Actualización: noviembre 2007

Si ninguna de las secciones de configuración existentes satisface sus necesidades, puede crear secciones personalizadas e implementar controladores para leer y escribir los datos de configuración. El controlador debe ser una clase de .NET Framework que extienda la clase ConfigurationSection.

Nota:

En las versiones 1.0 y 1.1 de .NET Framework, los controladores de la sección de configuración tenían que implementar la interfaz IConfigurationSectionHandler, que se admite todavía en la versión 2.0 de .NET Framework, pero está en desuso.

Los controladores de sección personalizados pueden ser implementados utilizando uno de los dos modelos de implementación: el modelo de programación o el modelo declarativo.

Modelo de implementación de programación

Este modelo requiere crear para cada atributo de sección una propiedad para obtener o establecer su valor y agregarlo a la colección de propiedades interna de la clase base ConfigurationElement subyacente.

Modelo de implementación declarativo

Este modelo, que también se denomina el modelo con atributos, le permite definir un atributo de sección utilizando una propiedad y estableciendo atributos. Estos atributos indican al sistema de configuración de ASP.NET los tipos de propiedad y sus valores predeterminados. Con esta información, que se obtiene mediante reflexión, el sistema de configuración de ASP.NET crea los objetos de propiedad de la sección y realiza la inicialización necesaria. Para obtener más información sobre la reflexión, vea Información general sobre la reflexión.

Clases utilizadas para crear identificadores de sección personalizados

La tabla siguiente muestra las clases que se utilizan para crear controladores de sección personalizados mediante programación.

En cada uno de los temas de la clase, hay ejemplos de código detallados que utilizan uno u otro modelo de implementación o ambos. Además, puede ver un ejemplo de código declarativo simplificado en Cómo: Crear secciones de configuración personalizadas mediante ConfigurationSection.

Clases utilizadas para implementar un controlador de sección

Descripción

ConfigurationSection (clase)

Representa una sección dentro de un archivo de configuración.

Utilice ConfigurationSection para implementar un tipo de controlador de sección personalizado. Extienda la clase ConfigurationSection para proporcionar control personalizado y acceso mediante programación a las secciones de configuración personalizadas.

Las secciones registran su tipo de control con una entrada en el elemento configSections de un archivo de configuración.

ConfigurationSectionCollection (clase)

Representa una colección de secciones relacionadas dentro de un archivo de configuración.

Utilice ConfigurationSectionCollection en la creación de tipos personalizados que extienden la clase ConfigurationSection. Utilícelo además al leer mediante programación un archivo de configuración mediante una colección de objetos ConfigurationSection.

ConfigurationElementCollection (clase)

Representa una colección de elementos dentro de un archivo de configuración.

Utilice ConfigurationElementCollection para trabajar con una colección de objetos ConfigurationElement. Implemente esta clase para agregar colecciones de elementos ConfigurationElement personalizados a una ConfigurationSection.

ConfigurationElement (clase)

Representa un elemento dentro de un archivo de configuración.

Utilice ConfigurationElement como la clase base para las clases que representan elementos de configuración de XML, por ejemplo ConfigurationSection.

Puede extender la clase ConfigurationElement para representar un elemento de configuración dentro de una ConfigurationSection. También puede crear una ConfigurationElementCollection de elementos ConfigurationElement. Cada objeto ConfigurationElement crea una colección ConfigurationPropertyCollection interna de objetos ConfigurationProperty que representa los atributos del elemento o una colección de elementos secundarios.

ConfigurationCollectionAttribute (clase)

Indica a .NET Framework, mediante declaración, que cree instancias de una colección de propiedades del elemento de configuración.

Utilice ConfigurationCollectionAttribute para agregar atributos a una propiedad ConfigurationElementCollection. Esto indica a .NET Framework que cree instancias de la propiedad y la inicialice utilizando los valores ConfigurationElement personalizados.

ConfigurationPropertyCollection (clase)

La clase ConfigurationPropertyCollection representa la colección de objetos ConfigurationProperty que pueden ser atributos u objetos ConfigurationElement de un elemento de configuración.

ConfigurationProperty (clase)

Representa un atributo o un elemento secundario de un elemento de configuración. En el caso de un ConfigurationElement simple, los objetos ConfigurationProperty representan atributos. En el caso de elementos de configuración complejos, como una sección que contenga subsecciones, los objetos ConfigurationProperty pueden representar objetos ConfigurationElement así como atributos.

La clase ConfigurationProperty representa una opción de configuración individual. Esta clase permite obtener o establecer el nombre, tipo y valor predeterminado de una entidad de configuración determinada (atributo o elemento) y especificar si se requiere el atributo, si es una clave de colección o representa una colección de elementos predeterminada.

ConfigurationPropertyAttribute (clase)

Indica a .NET Framework, mediante declaración, que cree instancias de una propiedad del elemento de configuración.

ConfigurationPropertyAttribute se utiliza para representar una propiedad de elemento de configuración. Con ello se indica a .NET Framework que cree instancias e inicialice la propiedad mediante el valor del parámetro de decoración.

Vea también

Tareas

Cómo: Crear secciones de configuración personalizadas mediante ConfigurationSection

Cómo: Crear secciones de configuración personalizadas mediante IConfigurationSectionHandler

Conceptos

Estructura de archivos de configuración de ASP.NET (secciones y controladores de sección)