Web config dividido en varios archivos

Eva Higueras | 03 de junio de 2011 | Añadir comentario

Más sobre: ASP.NET, Trucos | Tags: , , , ,

Para dividir el web.config en varios archivos:

Cuando trabajamos con aplicaciones Web, el archivo WEB.CONFIG contiene la configuración del proyecto, y esta configuración está dividida en varios bloques.  La división del WEB.CONFIG en varios archivos nos permite aislar estos bloques para facilitar su localización y actualización.

Además, algunos de estos bloques son diferentes si estamos en el entorno de desarrollo, en el entorno de pre-producción, o en el entorno de producción, por lo que aislando las partes que sean propias de los diferentes entornos con los que trabajemos, facilitaremos las puestas en producción.

Para dividir el web.config en varios archivos debemos de utilizar la propiedad configSource, e indicar el nombre del archivo en el que está el bloque que hemos aislado. Por ejemplo, si queremos aislar el bloque de las cadenas de conexión, haremos lo siguiente:

ARCHIVO WEB.CONFIG

  [.....]
 
 
[.....]

ARCHIVO CONEXION.CONFIG


 
 
 

Si realizamos esta división, debemos tener en cuenta lo siguiente:

Cuando en un proyecto, que se está ejecutando, se realiza una modificación sobre el WEB.CONFIG, la aplicación se reinicia. Esto se produce porque hay determinadas partes del WEB.CONFIG que requieren que se fuerce un reinicio de la aplicación  si se realizan cambios sobre ellas. Esto viene establecido, a nivel de bloque,  en el MACHINE.CONFIG (con la variable restartOnExternalChanges a false para aquellos bloques que no requieren reinicio).

Si aislamos un bloque que no requiera que la aplicación se reinicie, por ejemplo, appSettings, conseguiremos que los cambios que se produzcan sobre este archivo no fuercen un reinicio de la aplicación.

Más sobre: ASP.NET, Trucos | Tags: , , , ,