Я унаследовал код, написанный для Azure Functions, и я почти ничего не знаю о функциях Azure. В настоящий момент этот код написан для нашей промежуточной среды и имеет такие вещи, как жестко закодированные URL-адреса, специфичные для нашей промежуточной среды и различные ключи API, которые будут отличаться в процессе производства.Где хранить свойства конкретной конфигурации приложения в приложении Azure Functions
Первая задача, которую я хотел бы выполнить, - избавиться от этих жестко закодированных строк и переместить их в какой-то «конфигурационный» файл, который можно развернуть через нашу систему сборки. Другими словами, приложение «Лазерные функции» будет нацелено на нашу промежуточную среду, и производственное приложение будет нацелено на нашу производственную среду. С обычным C# -приложением я просто вставлял бы это в файл web.config или app.config.
У меня есть два вопроса:
Первое: Где рекомендуемое место для хранения этих свойств конфигурации? Давайте этот бит кода у меня есть в моем файле CSX:
public const string apikey = "37eb882ff6914b4c9205673547c10dc8"; // This value needs to change based on our environment
Первое, что я смотрел в была функция приложение настройки-> Настройка приложения Настройки-> Настройки приложения раздел. Я добавил новый параметр приложения, но не смог найти способ на самом деле : значение в коде (я пытался использовать ConfigurationManager), и не мог найти документацию о том, как это работает.
Следующая вещь, на которую я смотрел, был файл function.json, содержащий информацию о том, как вызывается функция. Там, кажется, нет области, где я могу добавить свои собственные настройки.
Наконец, я посмотрел файл host.json, который находится в корне приложения. В этом файле есть куча документации, но, похоже, это не подходящее место для пользовательских настроек.
Second: Как только я добавлю свою собственность здесь, как ее прочитать с помощью кода на C#? Другими словами, что бы я заменил эту строку public const string
?
Большое спасибо!
Это было первое, что я пробовал, и это не сработало! Lemme дайте ему еще один снимок, возможно, что-то не спасло, или я сделал некоторую ошибку id10t. –
@MikeChristensen Какую версию Runtime вы используете? Для этого может потребоваться «последний (~ 1)», который является выпуском GA, а также без предварительного просмотра. Это даст вам кнопку, чтобы обновить ее, если вы в превью. –
Теперь он работает. Не уверен, что было раньше, возможно, настройки не сэкономили во времени или что-то еще. –