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

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

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

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, чтобы подключить тестовые сервисы в конфигурации отладки.

Спасибо,


person Güray Baykan    schedule 08.11.2017    source источник


Ответы (1)


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

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

#if DEBUG
....
#endif
person Güray Baykan    schedule 08.12.2017