2009-07-28 23 views
9

Me gusta dividir mi app.config en una parte específica del usuario y una parte específica de la aplicación. ¿Es posible almacenar una parte del app.config en otro archivo?Cargar partes de App.Config desde otro archivo

Yo ya habia intentado esto:

<!DOCTYPE cruisecontrol [<!ENTITY email SYSTEM "email.config">] > 

pero esto no se carga.

¿Hay alguna otra posibilidad sin cambiar la aplicación en sí?

Respuesta

26

Puede usar el atributo configSource para indicar al marco que cargue una sección determinada de otro archivo.

Por ejemplo, si usted tenía un archivo de configuración con una sección como esta:

<connectionStrings> 
    <add name="MyDatabase" connectionString="...etc..." /> 
</connectionStrings> 

podría reemplazar con:

<connectionStrings configSource="ConnectionStrings.config" /> 

... y crear un archivo con el contenido ConnectionStrings.config de la sección original (incluido el nodo <connectionStrings>, exactamente el mismo que mi primera sección de códigos).

+0

¡Esto es tan genial! He estado buscando una manera de hacer esto por tanto tiempo, y estuvo justo frente a mí todo el tiempo. – grimus

+0

El problema es que esto parece incluir solo cadenas de conexión, pero no ayuda cuando intenta incluir secciones de configuración de otros archivos. – Kjellski

+1

@Kjellski Puedo asegurarle que 'configSource' funciona para todos los elementos. Te sugiero que leas cómo funciona: http://weblogs.asp.net/fmarguerie/archive/2007/04/26/using-configsource-to-split-configuration-files.aspx –

Cuestiones relacionadas