【问题标题】:ConfigurationManager does not exist after upgrading newtonsoft.json升级 newtonsoft.json 后 ConfigurationManager 不存在
【发布时间】:2023-03-18 13:13:01
【问题描述】:

我正在使用 C# 编程语言创建 azure 函数应用程序。我的应用程序正在编译并运行良好。目前目标框架和功能版本是这样的

<TargetFramework>net462</TargetFramework>
<AzureFunctionsVersion>v1</AzureFunctionsVersion>

我想更新到

<TargetFramework>netcoreapp3.1</TargetFramework>
<AzureFunctionsVersion>v3</AzureFunctionsVersion>

进行此更改时,我必须将 newtonsoft.json NuGet 包从 9.0.1 升级到 11.0.2。在此之后,我开始在此代码中收到此错误

string config= ConfigurationManager.AppSettings["configfileName"];
Error:
CS0103 C# The name 'ConfigurationManager' does not exist in the current context

我没有看到添加对此 dll 的引用的选项。我有哪些选择?

【问题讨论】:

    标签: c# json.net azure-functions configurationmanager netcoreapp3.1


    【解决方案1】:

    是的,当然你会遇到这个错误。 azure function v1 可以随意使用 ConfigurationManager,但是 function v2 和 function v3 不支持。

    您需要参考环境变量,在本地它是在 local.settings.json 的“值”部分中设置的。在 azure 上,它是在配置设置选项卡中设置的。

    使用它来获取设置:

    System.Environment.GetEnvironmentVariable($"{parameterName}")

    【讨论】:

    • 看起来上述解决方案可行,但由于此错误,我无法编译 -- 错误 System.IO.FileNotFoundException: 无法加载文件或程序集 'System.Runtime,版本 = 4.2。 2.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。该系统找不到指定的文件。 --- 我该如何解决这个问题?
    猜你喜欢
    • 2015-05-15
    • 1970-01-01
    • 2013-10-27
    • 2017-06-05
    • 1970-01-01
    • 2014-10-28
    • 2020-02-07
    • 1970-01-01
    • 2021-07-03
    相关资源
    最近更新 更多