Каков правильный формат для замены переменной ConnectionString в конвейере выпуска? - PullRequest
1 голос
/ 13 июля 2020

Я использую следующую строку подключения в моем файле web.config

<configuration>
  <connectionString>
    <add name="DefaultConnection" connectionString="__DefaultConnection__" providerName="System.Data.SqlClient" />
  </connectionString>
  <appSettings>
    <add key="webpages:Version" value="3.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="ClientValidationEnabled" value="__ClientValidationEnabled__" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>

И в конвейере выпуска IIS Web Deploy я использую XML Подстановку переменных, определяя переменную с именем ключа DefaultConnection и value как Server=127.0.0.1;Database=myDataBase;Trusted_Connection=True;

Переменная в appsettings изменяется на стороне сервера, но не для connectionString. Это правильный способ объявления строки подключения. Я делаю это только для тестовых целей, и у меня нет настроек действительных подключений. Также в документации Microsoft здесь формат совсем другой. Может ли кто-нибудь помочь мне в этом случае, как я могу использовать это только в тестовых целях, имея в виду, что сервер IIS не go не работает.

1 Ответ

1 голос
/ 13 июля 2020

Как определено в документации Microsoft, строка подключения должна иметь тот же формат, который вы использовали в значении переменной, например,

Server=127.0.0.1;Database=myDataBase;Trusted_Connection=True

Внесите следующие изменения в свой файл конфигурации:

  <connectionString>
    <add name="DefaultConnection" connectionString="Server=local;Database=undefined;Trusted_Connection=False
" providerName="System.Data.SqlClient" />
  </connectionString>

Теперь запустите конвейеры, и вы должны увидеть изменения в web.config на стороне сервера.

...