在 Azure Function v2 (.NET Core) app 中读取 .NET Fx app.config



我正在使用v2 SDK开发一个新的Azure函数。因此,函数应用是 .NET Core 应用。函数所需的许多逻辑存在于 .NET Framework 4.7.2 库中,这些库是从函数项目中引用的。

该项目编译并运行(到目前为止,在本地(。但是,即使我在项目中有一个 app.config 文件,该文件设置为复制到输出目录,库似乎也找不到配置。

app.config文件将复制到名为 app.config 的 \bin\Debugetcoreapp3.0 文件夹中。这可能行不通,但即使我将配置文件复制到 bin 子文件夹 (\bin\Debugetcoreapp3.0\bin( 并将其名称更改为 myassembly.dll.config(其中 myassembly 是编译的函数应用程序(,也找不到配置。

我还将连接字符串(关键配置部分之一(添加到local.settings.json中。

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

这也不会使连接字符串可用于 .NET Framework 类库中的代码。

我还尝试将 System.Configuration.ConfigurationManager NuGet 包 (4.6.0( 添加到函数应用项目中,而无需更改。

我不确定是否有其他简单的解决方案。但是有一个解决方法。

您可以将所有配置添加到local.settings.json,该函数会将所有这些配置设置为系统环境设置。

然后你可以通过以下方式得到一个:

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

最新更新