2013-06-12 2 views
2

у меня есть это в моем web.configWeb.Config Debug/Release: не работает

<add name="AS400" connectionString="Provider=IBMDA400;Data Source=AAAAA;User Id=aaaaaa;Password=aaaaaa;Default Collection=*SYS;" providerName="System.Data.OleDb" lockItem="true"/> 

В моей Web.Debug.config (То же из WebConfig)

<add name="AS400" connectionString="Provider=IBMDA400;Data Source=AAAAA;User Id=aaaaaa;Password=aaaaaa;Default Collection=*SYS;" providerName="System.Data.OleDb" lockItem="true" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/> 

В мой Web.Release.config

<add name="AS400" connectionString="Provider=IBMDA400;Data Source=ZZZZZ;User Id=aaaaaa;Password=aaaaaa;Default Collection=*SYS;" providerName="System.Data.OleDb" lockItem="true" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/> 

Но ничего не работает. Если я создаю F5, в режиме Release у меня всегда есть строка подключения в web.config.

Идея?

+0

Если вы щелкните правой кнопкой мыши по файлу -> превью преобразование, это сработает? – cheesemacfly

+4

Я считаю, что это не так, как работают debug и release. Они преобразуются только тогда, когда вы публикуете не при отладке в visual studio. Я увижу, могу ли я найти статью от Microsoft, которая заявляет об этом. – user2453734

ответ

9

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

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

Редактировать: Если вы используете последнюю версию SlowCheetah extension для Visual Studio, она преобразует ваши файлы конфигурации во время сборки.

+0

Я раньше не публиковал. Благодаря :) – Portekoi