MsDeploy: как иметь много производственной среды - PullRequest
0 голосов
/ 12 ноября 2018

Сегодня у меня есть производственная среда, размещенная на IIS и использующая MsDeploy для развертывания.Итак, строка подключения к базе данных установлена ​​в appsetting.Production.json.

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

Заранее спасибо,

1 Ответ

0 голосов
/ 13 ноября 2018

Развертываются ли они на отдельных машинах? Вы можете переопределить настройки в appsettings.json, используя настройки среды. Для этого вам не нужно менять код, поскольку ASP.NET Core сделает всю работу за вас.

Короче говоря, настройки читаются в следующем порядке, причем более поздние переопределяют значения из предыдущих:

  1. Файлы (appsettings.json, appsettings. {Environment} .json, где {Environment} - текущая хостинговая среда приложения)
  2. Хранилище ключей Azure
  3. Секреты пользователя (Secret Manager) (только в среде разработки)
  4. Переменные среды
  5. Аргументы командной строки

Итак, на вашем втором рабочем компьютере вы можете добавить Environment variable, чтобы переопределить настройку в appsettings.Production.json. Если вы используете SQL Server, вы можете установить переменную окружения SQLCONNSTR_, чтобы переопределить ваши настройки, добавить имя вашего соединения в конце, например, SQLCONNSTR_DefaultConnection.

Если вы собираетесь использовать переменные среды для переопределения настроек на одном компьютере, я предлагаю вам сделать это для всех производственных машин для согласованности.

Посмотрите этот раздел в Конфигурация в ASP.NET Core для полной последовательности конфигурации.

Информация о конкретных настройках ConnectionString на той же странице, что и выше .

...