Несколько файлов App.Config - PullRequest
       8

Несколько файлов App.Config

8 голосов
/ 01 апреля 2010

Я хочу отделить свой файл app.config. Например, я хочу переместить часть ServiceModel в другой файл конфигурации в том же проекте. Как я могу это сделать?

Спасибо.

Ответы [ 4 ]

5 голосов
/ 01 апреля 2010

Вы должны иметь пустой элемент с атрибутом configSource, установленным для второго файла (относительно первого). Смотрите здесь, как включить его для пользовательских разделов .

3 голосов
/ 01 апреля 2010

Я нашел способ. Я изменил тег, как это.

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

После того, как я создал файл Services.config и я положил его

<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>

То же самое я сделал в файлах Bindings, Behaviors, Extensions.config.

И это работает

2 голосов
/ 01 апреля 2010

Используйте что-то вроде этого:

<?xml version="1.0"?>    
<configuration>    
    <appSettings />    
    <connectionStrings/>    
    <system.web>    
        <compilation debug="false" strict="false" explicit="true" />    
    </system.web>    
    <appSettings file="externalSettings.config"/>    
</configuration>
0 голосов
/ 01 апреля 2010

Насколько мне известно, это, к сожалению, невозможно.

Что вы можете сделать, это (если мы говорим о прокси-серверах WCF) создать и настроить прокси-сервер в своем коде. Таким образом, вам не нужен раздел serviceModel .

Теперь просто определите свой собственный раздел для нужных вам данных, которые затем можно будет поместить за пределы вашего файла конфигурации.

...