Archivos de configuración web en ASP.NET





Se utilizan archivos XML (Extensible Marckup Language) para almacenar las configuraciones que controlan diferentes aspectos de un sitio web ASP.NET. La mayoría de los sitios en ASP.NET tienen un único archivo XML llamado Web.config en el directorio raíz de la aplicación; aunque es posible añadir más archivos Web.config en cualquier subcapeta para cambiar el comportamiento de esa sección del sitio.
Jerarquía de los archivos de configuración:
Estos archivos permiten gestionar muchas configuraciones relacionadas con tu sitio web. Cada archivo es uno XML (con la extensión .config) que contiene un conjunto de elementos de configuración. Por lo tanto, es importante entender como estos archivos trabajan en conjunto estableciendo y reescribiendo varias configuraciones.
Los archivos de configuración son aplicados a un sitio en ejecución basados en una jerarquía. Generalmente hay un archivo de configuración global almacenado en el servidor. Este archivo llamado Machine.config, está normalmente ubicado en el directorio %SystemRoot%\Microsoft.NET\Framework\\CONFIG\. Machine.config es un archivo que contiene configuraciones para todos los tipos de aplicación .NET, como las de Windows, Consola, ClassLybrary, y aplicaciones web. Estas configuraciones son globales para el servidor. Algunos de los ajustes en este archivo pueden ser reescritas por las detalladas en los archivo Web.config a medida que van “bajando” en la jerarquía, donde otras configuraciones son naturalmente más globales. Los más globales pertenecen a .NET Framework, por lo que están protegidos y no pueden ser reescritos por los Web.config.
Este archivo (Machine.config) define valores de configuración por defecto para todos los sitios que corren en el servidor, mientras que el otro archivo Web.config más abajo en la cadena de jerarquía no anula ninguna de estas opciones. Para modificar la configuración para todos los sitios web en una computadora se debe editar el archivo Web.config ubicado en la misma carpeta que el Machine.config.
Para cambiar las opciones para un sitio de forma individual, se puede utilizar el archivo Web.config específico del mismo ubicado en la carpeta raíz. Además es posible agregar más archivos Web.config para aplicaciones específicas y ubicarlos en subcarpetas del sitio web.