Personas que lo han encontrado útil: 2 de 3 - Valorar este tema

ConfigurationManager (Clase)

Nota: esta clase es nueva en la versión 2.0 de .NET Framework.

Proporciona acceso a los archivos de configuración para las aplicaciones cliente. Esta clase no se puede heredar.

Espacio de nombres: System.Configuration
Ensamblado: System.Configuration (en system.configuration.dll)

public static class ConfigurationManager
public final class ConfigurationManager
public final class ConfigurationManager

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:

  • Permiso de lectura para el archivo de configuración del nivel de jerarquía de configuración actual.

  • Permisos de lectura para todos los archivos de configuración principal.

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:
  • Permiso de escritura para el directorio y el archivo de configuración del nivel de jerarquía de configuración actual.

  • Permisos de lectura para todos los archivos de configuración.

En el ejemplo de código siguiente se muestra cómo utilizar la clase ConfigurationManager para obtener acceso a una sección de configuración personalizada. Si la sección no existe, se crea y agrega al archivo de configuración. La implementación de la clase de sección personalizada que se utiliza en este ejemplo es la que se desarrolla en el ejemplo de la clase ConfigurationPropertyAttribute.

// Create a custom section.
static UsingConfigurationManager()
{
    // Get the application configuration file.
    System.Configuration.Configuration config =
            ConfigurationManager.OpenExeConfiguration(
            ConfigurationUserLevel.None);
 
    // If the section does not exist in the configuration
    // file, create it and save it to the file.
    if (config.Sections[customSectionName] == null)
    {
        custSection = new CustomSection();
        config.Sections.Add(customSectionName, custSection);
        custSection =
            config.GetSection(customSectionName) as CustomSection;
        custSection.SectionInformation.ForceSave = true;
        config.Save(ConfigurationSaveMode.Full);
    }
}

El ejemplo trabaja con los elementos que se muestran en el archivo de configuración siguiente, que se genera la primera vez que se ejecuta el ejemplo.

NotaNota

Debe establecer el atributo Version para reflejar sus requisitos de control de versiones.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="CustomSection" 
       type="Samples.Config.CustomSection,
         ConfigurationManager, 
         Version=1.0.0.0, 
         Culture=neutralPublicKeyToken=null" 
         allowDefinition="Everywhere" 
         allowExeDefinition="MachineToApplication" 
         restartOnExternalChanges="true" />
  </configSections>
  <connectionStrings>
    <add name="ConnStr1" 
      connectionString="LocalSqlServer: data source=127.0.0.1;Integrated Security=SSPI;Initial Catalog=aspnetdb"
      providerName="System.Data.SqlClient" />
    <add name="ConnStr2" 
      connectionString="LocalSqlServer: data source=127.0.0.1;Integrated Security=SSPI;Initial Catalog=aspnetdb"
      providerName="System.Data.SqlClient" />
  </connectionStrings>
  <appSettings>
    <add key="AppSetting0" 
      value="Monday, February 28, 2005 1:27:59 PM" />
    <add key="AppSetting1" 
      value="Monday, February 28, 2005 1:36:40 PM" />
  </appSettings>
  <CustomSection fileName="default.txt" maxUsers="1000" 
     maxIdleTime="00:10:00" />
</configuration>
System.Object
  System.Configuration.ConfigurationManager
Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 SP4, Windows Millennium, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0
¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar
windows xp professional x64 edition
windows xp professional x64 edition