【问题标题】:Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' in Azure Functions无法在 Azure Functions 中加载文件或程序集“Newtonsoft.Json,版本=10.0.0.0,文化=中性,PublicKeyToken=30ad4fe6b2a6aeed”
【发布时间】:2017-11-21 20:40:09
【问题描述】:

我正在从我的 Azure 函数(服务总线队列触发器)中引用一个 C# 库项目。该库引用 Newtonsoft nuget 版本 10.0.1。 在我的 Visual Studio 上本地运行该函数时,出现此错误。

{"Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The system cannot find the file specified.":"Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed"}

我尝试降级到版本 10.0.0,但问题仍然存在。

我偶然发现了这个问题链接:https://github.com/Azure/azure-functions-vs-build-sdk/issues/107。 并尝试降级到 9.0.1。但即便如此,错误仍然存​​在。

注意:库项目引用了其他几个也引用 Newtonsoft 的库项目。我在所有子项目中保持相同版本的 nuget。

如何解决这个问题?

【问题讨论】:

  • 请检查解决方案中存在的所有库项目。在所有引用的项目和您的项目中保留Newtonsoft.Json 的最新稳定版本。
  • 想确定;你在构建时看到这个吗?您能否分享有关何时出现此问题的更多详细信息(因为这里有几个可能的问题)
  • @FabioCavalcante这发生在运行时。
  • 明确一点,降级到 9.0.1 时仍然看到加载 10.0.0.0 的错误?或者它是一个不同的错误?如果您在本地运行,它会重现吗?
  • @FabioCavalcante 引用 9.0.1 时,它的工作。早些时候,即使在降级 nuget 之后,它仍然指的是版本 10 dll。之前没有注意到dll版本。我的错。

标签: c# azure json.net azure-functions serverless


【解决方案1】:

将所有子库中的所有 Newtonsoft dll 指向 9.0.1 版本解决了该问题。

【讨论】:

    猜你喜欢
    • 2017-11-15
    • 2014-04-25
    • 1970-01-01
    • 2016-11-07
    • 2016-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多