Как заставить службу приложений читать строку подключения из настроек, а не из файла appsettings.json?
Мы пробовали Настройки / Настройки приложения / Строки подключения и Настройки / Конфигурация (предварительный просмотр) / Строки соединения, но он продолжает читать из загруженного файла appsettings.json.
Мы использовали DevOps Azure и пробовали публикацию в один клик через Интернет. Вероятно, это было бы при работе с публикацией вручную и заменой строки соединения непосредственно из настроек публикации (в VS).
Мы использовали этот подход для других (неосновных) веб-сайтов, и он работает как следует.
Я проверил учебники для Asp.Net Core и Azure Hosting, и, полагаю, я все сделал правильно?
Где я могу начать отлаживать эту штуку?
EntityFramework находится в отдельном проекте, мы используем внедрение зависимостей с помощью специального конструктора для строки подключения, и это прекрасно работает, если я вручную настраиваю файл appsettings.json, но мне нужно развернуть его на нескольких серверах, и это не имело бы большого смысла для этого материала из кода или вручную каждый раз. И я не хотел бы исключать автоматическое развертывание appsettings.json, я просто хочу преобразовать его на сервере.
ConfigureServices
IConfigurationRoot configuration = new ConfigurationBuilder().SetBasePath(AppDomain.CurrentDomain.BaseDirectory).AddJsonFile("appsettings.json", optional: false, reloadOnChange: true).Build();
string connectionString = configuration.GetConnectionString("DefaultConnection");
appsettings.json
{
"ConnectionStrings": {
"DefaultConnection": "xxx"
},
...
Возможно, я неправильно прочитал appsetting.json, и Azure не может правильно внедрить новую строку подключения?