2010-04-01 34 views
7

Quiero separar mi archivo app.config. Por ejemplo, quiero mover la parte de ServiceModel a otro archivo de configuración en el mismo proyecto. ¿Cómo puedo hacer eso?Múltiples archivos App.Config

Gracias.

Respuesta

5

Debería poder tener un elemento vacío con el atributo configSource establecido en el segundo archivo (relativo al primero). Vea aquí cómo habilitarlo for custom sections.

1

Por lo que yo sé, esto lamentablemente no es posible.

Lo que podría hacer es (si estamos hablando de proxies WCF) crear y configurar su proxy en su código. De esta forma, no necesita la sección serviceModel.

Ahora solo defina su propia sección personalizada para los datos que necesita y que luego puede colocarse fuera de su archivo de configuración.

2

usar algo como esto:

<?xml version="1.0"?>  
<configuration>  
    <appSettings />  
    <connectionStrings/>  
    <system.web>  
     <compilation debug="false" strict="false" explicit="true" />  
    </system.web>  
    <appSettings file="externalSettings.config"/>  
</configuration> 
2

he encontrado el camino. Cambié la etiqueta así.

<system.serviceModel> 
    <behaviors configSource="Behaviors.config"> 
    </behaviors> 
    <services configSource="Services.config"> 
    </services> 
    <bindings configSource="Bindings.config"> 
    </bindings> 
    <extensions configSource="Extensions.config"> 
    </extensions> 
    </system.serviceModel> 

después de haber creado el archivo services.config y su Pongo este

<services> 
    <service behaviorConfiguration="ServiceBehavior" name="EntLib31ExceptionTest.Service1"> 
    <host> 
     <baseAddresses> 
     <add baseAddress="http://localhost:8001/ValidationService1/" /> 
     </baseAddresses> 
    </host> 
    <endpoint address="" 
       binding="wsHttpBinding" 
       bindingConfiguration="CustomBinding" 
       contract="EntLib31ExceptionTest.IService"  
       behaviorConfiguration="Validation"/> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service> 
</services> 

Lo mismo que he hecho en enlaces, Comportamientos, archivos Extensions.config.

Y funciona

+0

@Wilson: hay que aprender a poner de relieve su código o XML líneas y pulse el botón "código" (101 010) en la barra de herramientas del editor para darles formato muy bien - no sucio "