Чтение .NET Fx app.config в приложении Azure Function v2 (.NET Core) - PullRequest
0 голосов
/ 18 октября 2019

Я разрабатываю новую функцию Azure с использованием v2 SDK. Таким образом, функциональное приложение является .NET Core App. Большая часть логики, в которой нуждается функция, существует в библиотеках .NET Framework 4.7.2, на которые ссылается проект Function.

Проект компилируется и выполняется (пока локально). Однако, хотя у меня в проекте есть файл app.config, для которого задана копия в выходной каталог, библиотеки не могут найти конфигурацию.

Файл app.config копируетсяв папку \ bin \ Debug \ netcoreapp3.0 с именем app.config. Это, вероятно, не сработает, но даже когда я копирую файл конфигурации в подпапку bin (\ bin \ Debug \ netcoreapp3.0 \ bin) и меняю его имя на myassembly.dll.config (где myassembly - приложение скомпилированной функции), конфигурация не может быть найдена.

Я также добавил строку подключения (один из ключевых элементов конфигурации) к local.settings.json как таковой

{
  ...,
  "ConnectionStrings": {
    "connstringname": "connectionstring..."
  }
}

Это такжене делает строку подключения доступной для кода в библиотеках классов .NET Framework.

Я также пытался добавить пакет NuGet System.Configuration.ConfigurationManager (4.6.0) в проект приложения Function безизменение.

1 Ответ

0 голосов
/ 21 октября 2019

Я не уверен, есть ли другое простое решение. Но есть обходной путь.

Вы можете добавить все конфигурации в local.settings.json, и функция установит все эти конфигурации в качестве настроек системного окружения.

Тогда вы можете получить по:

System.Environment.GetEnvironmentVariable("{key_name}");
...