Я пытаюсь создать супер базовую функцию Azure, но у меня проблемы с переменными среды.Следуя различным учебным пособиям,
var config = new ConfigurationBuilder()
.SetBasePath(context.FunctionAppDirectory)
.AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
.AddEnvironmentVariables()
.Build();
log.Info(config["AzureWebJobsStorage"]);
Мой local.settings.json выглядит следующим образом:
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "<language worker>",
"AzureWebJobsStorage": "abc123",
"AzureWebJobsDashboard": "abc123",
"MyBindingConnection": "abc123"
},
"Host": {
"LocalHttpPort": 7071,
"CORS": "*"
}
}
Когда я запускаю это локально, эта строка
log.Info(config["AzureWebJobsStorage"]);
ничего не возвращает ... но при развертывании в Azure я вижу в консоли "abc123".
Если, однако, я изменяю эту строку на
log.Info(config["Values:AzureWebJobsStorage"]);
Затем, когда я запускаю локально,Я вижу «abc123», но при развертывании в Azure я ничего не вижу.
Есть ли что-то, чего мне не хватает, чтобы иметь возможность получить доступ к переменным среды так же, как локально по сравнению с развернутым?
РЕДАКТИРОВАТЬ: Чтобы уточнить, эти параметры настроены в настройках приложения для функции: