Чистое основное приложение. Мой appsettings.json выглядит так, как показано ниже.
{
"AzureAd": {
"Authority": "https://login.microsoftonline.com/",
"TenantId": "mytenantid",
"ClientId": "myclientid"
},
"ApplicationInsights": {
"InstrumentationKey": "myinstrumentationkey"
},
"EnableSwagger":"true"
}
Я развернул свое приложение в службе приложений Azure. У меня есть настройки приложения в плане обслуживания приложений.
AzureAd:Authority
AzureAd:ClientId
AzureAd:TenantId
ApplicationInsights:InstrumentationKey
EnableSwagger
Проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда я развертываю свое приложение в службе приложений Azure, только значение EnableSwagger из конфигураций службы приложений в appsettings.json. Итак, ключ: конфигурации типа Value работают нормально. Проблема с ключами вложенных объектов, например
"AzureAd": {
"Authority": "https://login.microsoftonline.com/"
}
Это значение не переопределяется из параметров приложения конфигурации службы приложений в мое приложение appsettings.json. Но там, где у меня есть только Key: Value, его приоритетность. Я потратил целый день и не мог понять, в чем проблема. Я попытался изменить конфигурацию appservice ниже syntex, так как это Linux. AzureAd: Полномочия, которые я заменил: на __ (двойное подчеркивание), это тоже не работает для меня? Также это происходит только тогда, когда я развертываю приложение через конвейер выпуска. Если я разверну вручную, щелкнув решение правой кнопкой мыши и настроив службу приложения, а затем нажмите кнопку «Опубликовать». Оно работает. Единственная проблема, с которой я столкнулся в конвейере выпуска. Может кто-нибудь подскажет, как это исправить? Любая помощь очень ценится. Спасибо