La clase ConfigurationManager permite obtener acceso a la información de configuración de usuarios, aplicaciones y equipos. Esta clase reemplaza la clase ConfigurationSettings, que queda en desuso.
Las aplicaciones cliente se ejecutan en el cliente, mientras que las aplicaciones Web se ejecutan en el servidor al que está conectado el cliente.
Para controlar la información de configuración, se pueden utilizar los tipos System.Configuration integrados o derivados de ellos. El uso de estos tipos permite trabajar directamente con la información de configuración y ampliar los archivos de configuración para que incluyan la información personalizada.
La clase ConfigurationManager incluye miembros que permiten llevar a cabo las tareas siguientes.
-
Leer una sección de un archivo de configuración. Para obtener acceso a la información de configuración, llame al método GetSection. Para algunas secciones como appSettings y connectionStrings, utilice las clases de AppSettings y ConnectionStrings. Estos miembros llevan a cabo operaciones de sólo lectura, utilizan una única instancia almacenada en memoria caché de la configuración y reconocen los multiprocesos.
-
Leer y escribir totalmente archivos de configuración. La aplicación puede leer y escribir las opciones de configuración en cualquier nivel, para sí o para otras aplicaciones o equipos, de forma local o remota. Para abrir un archivo de configuración como SampleApp.exe.config, utilice uno de los métodos proporcionados por la clase ConfigurationManager. Estos métodos devuelven un objeto Configuration que, a su vez, expone métodos y propiedades que se pueden utilizar para trabajar con los archivos de configuración asociados. Los métodos llevan a cabo operaciones de lectura o escritura y vuelven a crear los datos de configuración cada vez que se escribe en un archivo.
-
Compatibilizar tareas de configuración. Para compatibilizar las diversas tareas de configuración, se utilizan los tipos siguientes:
Además de trabajar con la información de configuración existente, se pueden crear elementos de configuración personalizados, y trabajar con ellos, extendiendo los tipos de configuración integrados como las clases ConfigurationElement, ConfigurationElementCollection, ConfigurationProperty y ConfigurationSection. Para obtener un ejemplo sobre la forma de extender mediante programación un tipo de configuración integrado, vea ConfigurationSection. Para obtener un ejemplo sobre la forma de extender un tipo de configuración integrado mediante el modelo basado en atributos, vea ConfigurationElement.
Notas para los implementadores
La clase
Configuration permite el acceso mediante programación para editar archivos de configuración. Se utiliza uno de los métodos Open proporcionados por
ConfigurationManager. Estos métodos devuelven un objeto
Configuration que, a su vez, proporciona los métodos y propiedades necesarios para controlar los archivos de configuración subyacentes. Se puede obtener acceso de lectura o escritura a estos archivos.
Para leer los archivos de configuración, utilice
GetSection o
GetSectionGroup para leer la información de configuración. El usuario o el proceso que realice la lectura debe tener los permisos siguientes:
Si la aplicación necesita acceso de sólo lectura a su propia configuración, se recomienda utilizar el método
GetSection. Este método proporciona acceso a los valores de configuración almacenados en memoria caché para la aplicación actual, lo que supone un rendimiento mejor que el de la clase
Configuration.
Para escribir en los archivos de configuración, utilice uno de los métodos
Save. El usuario o el proceso que realice la escritura debe tener los permisos siguientes: