Azure函数中的程序集绑定重定向

时间:2018-05-03 07:32:45

标签: .net azure nuget azure-functions assembly-binding-redirect

我创建了一个Azure函数,我们知道它有Microsoft.NET.Sdk.Functions 1.0.8软件包,它依赖于Newtonsoft.Json 9.0.1。

我添加了另一个类库作为此Azure函数的引用,该函数依赖于Newtonsoft.Json 11.0.2。

在运行时期间,我收到错误声明" FileNotFoundException:无法加载文件或程序集' Newtonsoft.Json,Version = 11.0.0.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed'或其中一个依赖项。系统找不到指定的文件。"

这看起来像是与程序集绑定重定向相关的问题所以我按照此解决方案尝试修复 https://codopia.wordpress.com/2017/07/21/how-to-fix-the-assembly-binding-redirect-problem-in-azure-functions/ 但是,这也没有帮助。

对于这种情况,是否有一个我缺失的步骤或任何其他解决方法?感谢帮助。

1 个答案:

答案 0 :(得分:3)

Azure功能没有绑定重定向的概念。如果您的函数应用程序引用了依赖于Newtonsoft.Json的特定版本(例如版本x)且Microsoft.Net.Sdk.Functions隐式依赖于另一个版本(例如版本y)的库,则作为解决方法可以在您的函数应用程序中添加Newtonsoft.Json版本x的显式引用,方法是在您的软件包管理器控制台上运行它。

Install-Package Newtonsoft.Json -Version x

这将使您的项目依赖项显示黄色警告标志,但您不会收到运行时错误。

enter image description here