Compartir a través de


Cómo: Leer la configuración de la aplicación en un archivo Web.config

Actualización: noviembre 2007

Este ejemplo lee una configuración de la aplicación identificada por la clave customsetting1 en un archivo Web.config. El elemento appSettings es una colección NameValueCollection de cadenas. Trabajar con elementos de colección puede resultar un poco más complicado que trabajar con otros elementos de configuración.

Para obtener las opciones de configuración para la configuración Web del nivel raíz, se pasa null al método OpenWebConfiguration.

Para actualizar una opción de configuración, utilice el método Save o SaveAs del objeto de configuración. Para obtener más información, vea Utilizar las clases Configuration. Para obtener ejemplos de código adicionales, vea la clase AppSettingsSection y las clases relacionadas.

Este ejemplo utiliza el método no estático de obtener datos de configuración, que permite extraer datos de configuración de cualquier aplicación. Si va a obtener información de configuración de la aplicación en la que reside su código, utilice el método estático que procesa más rápidamente. Para obtener más información, vea la sección Trabajar con opciones de configuración locales y remotas en Información general sobre la API de configuración de ASP.NET.

Ejemplo

Dim rootWebConfig1 As System.Configuration.Configuration
rootWebConfig1 = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Nothing)
If (0 < rootWebConfig1.AppSettings.Settings.Count) Then
    Dim customSetting As System.Configuration.KeyValueConfigurationElement
    customSetting = rootWebConfig1.AppSettings.Settings("customsetting1")
    If Not (Nothing = customSetting.Value) Then
        Console.WriteLine("customsetting1 application string = {0}", customSetting.Value)
    Else
        Console.WriteLine("No customsetting1 application string")
    End If
End If
         System.Configuration.Configuration rootWebConfig1 =
                System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);
            if (0 < rootWebConfig1.AppSettings.Settings.Count)
            {
                System.Configuration.KeyValueConfigurationElement customSetting = 
                    rootWebConfig1.AppSettings.Settings["customsetting1"];
                if (null != customSetting)
                    Console.WriteLine("customsetting1 application string = \"{0}\"", 
                        customSetting.Value);
                else
                    Console.WriteLine("No customsetting1 application string");
            }

Compilar el código

Para este ejemplo se necesita:

  • Un elemento appSettings del archivo Web.config raíz, similar al siguiente:

    <appSettings>
      <add key="customsetting1" value="Some text here"/>
    </appSettings>
    

    El elemento appSettings es un elemento secundario directo del elemento <configuration> y está al mismo nivel que el elemento system.web.

Programación eficaz

Los valores que se leen del elemento appSettings del archivo Web.config son siempre de tipo String. Si la clave especificada no existe en el archivo Web.config, no se produce ningún error. En su lugar, se devuelve una cadena vacía.

Seguridad

Se recomienda proteger el archivo de configuración en el servidor utilizando opciones de seguridad de Windows para limitar el acceso para lectura. Evite almacenar información confidencial como credenciales del usuario en el elemento appSettings del archivo Web.config. También puede cifrar las opciones de configuración. Para obtener más información, vea Cifrar información de configuración mediante una configuración protegida.

Vea también

Referencia

Elemento appSettings (Esquema de configuración general)

ConfigurationSettings Class