Переопределить адреса веб-сервисов, которые находятся на другом dll в файле Web.Debug.config

Я работаю над многослойным решением, приложением веб-форм. Все веб-сервисы находятся в рамках проекта под названием WS. Их более ста. И я звоню WS из проекта Web Forms.

Я хочу использовать тестовые сервисы под конфигурацией Debug и работающую систему под выпуском conf.

app.config проекта библиотеки WS

<applicationSettings>
  <WS.Properties.Settings>
    <setting name="settingName"
        serializeAs="String">
      <value>http://test.x.com/a.asmx</value>
    </setting>
  </WS.Properties.Settings>
</applicationSettings>

Поэтому я добавил web.Config эти строки

<configSections>
  <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">

    ......

    <section name="WS.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </sectionGroup>
</configSections>



<applicationSettings>
  <WS.Properties.Settings>
    <setting name="settingName"
        serializeAs="String">
      <value>http://live.x.com/a.asmx</value>
    </setting>
  </WS.Properties.Settings>
</applicationSettings>

Тогда он может запустить живые сервисы.

в web.debug.config я пробовал некоторые преобразования; однако программа все еще соединяется с настройками в web.debug (запускает живые сервисы).

<applicationSettings>
  <WS.Properties.Settings xdt:Transform="Replace" xdt:Locator="Match(name)">
    <setting name="settingName"
      serializeAs="String">
      <value>http://test.x.com/a.asmx</value>
    </setting>
 </WS.Properties.Settings>
</applicationSettings>

Как я должен изменить файл web.debug.config для подключения тестовых сервисов в конфигурации отладки.

Спасибо,

1 ответ

Решение

Этот выбор влияет только на публикацию, а не на отладку. Я нашел это, но у меня не было времени, чтобы поделиться, чтобы ответить.

Это может быть лучшим решением использовать некоторый препроцессор, такой как

#if DEBUG
....
#endif
Другие вопросы по тегам