2016-03-16 4 views
0

В среде промежуточной записи не требуется правильная строка подключения.В промежуточной среде не используется правильная строка подключения Asp.Net Core

У меня есть три среды. Разработка, постановка & Релиз. Мой AppSettings выглядит следующим образом:

{ 
"Data": { 
    "DefaultConnection": { 
    "ConnectionString": "My connection string" 
} 
}, 
"Logging": { 
    "IncludeScopes": false, 
    "LogLevel": { 
    "Default": "Verbose", 
    "System": "Information", 
    "Microsoft": "Information" 
    } 
} 
} 

У меня есть еще два файла с именем appsettings.Staging.json & appsettings.Release.json. В свойствах проекта Я сделал два профиля: Staging & Релиз ведьма имеет хостинг: среда со значением Staging в постановке и выпуске в выпуске. Он отлично работает в VS, но когда я загружаю его в Azure, он всегда использует настройки app по умолчанию с моей строкой соединения localhost вместо моей онлайн-БД. Что я делаю неправильно?

ответ

1

Вы не должны хранить строку подключения, если она имеет конфиденциальные данные в текстовом файле и должна установить значение непосредственно AppSettings в Azure для производства (или посмотреть что-то вроде Key Vault), чтобы установить значение. Я бы рекомендовал прочитать https://docs.asp.net/en/latest/security/app-secrets.html и https://docs.asp.net/en/latest/fundamentals/configuration.html.

Чтобы устранить проблему с чтением значений из правильного файла настроек, см. Ниже.

Вам необходимо установить значение среды в Azure. В Лазурном портале, на вашем WebApp пойти All Settings->Application Settings->AppSettings и добавить настройки ASPNET_ENV или Hosting:Environment со значением Staging (или любой другой средой вы заинтересованы в

Для чтения appsettings.Staging.json файла вы могли бы сделать что-то вроде:. set staging environment

Смежные вопросы