【发布时间】:2017-05-12 12:51:22
【问题描述】:
我正在使用一个 dll (MyApp.dll),它通过 nuget 引用 azure storage dll 版本 7.2.1。我已使用 "WindowsAzure.Storage": "7.2.1" 将 project.json 文件添加到我的 azure 函数中。 我还将 Microsoft.WindowsAzure.Storage 上传到 bin\ 目录。我的 run.csx 文件只有“new MyApp.Run(req)”。
我收到有关缺少 dll 的以下错误,我还可以在我的 azure 函数中更改什么来解决此错误?我可以在本地很好地使用 MyApp.dll。
'' 的类型初始值设定项引发了异常。无法加载文件 或程序集 'Microsoft.WindowsAzure.Storage, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其之一 依赖关系。定位程序集的清单定义不 匹配程序集引用。 (HRESULT 异常:0x80131040)。
【问题讨论】:
-
你能分享你的 project.json 以及你如何从你的 csx 中引用你的私有程序集吗?另外,你不应该混合这两种方法。您可能还想尝试的一件事是通过简单地添加对您的 csx 的引用来使用共享存储程序集:#r "Microsoft.WindowsAzure.Storage"(从 bin 文件夹中删除 project.json 和存储程序集)跨度>
-
如果我们的 project.json 的 azure 存储版本与 azure 函数提供的版本不同,会发生什么情况?如果我包含一个引用存储 dll 的 dll(而不是直接使用存储 dll 的 run.csx 文件),添加 project.json 似乎更自然。我希望放置 projects.json 中的 dll。顺便说一句,我通过切换到与 azure 函数相同的版本解决了我的问题。但是,当 azure 函数切换其存储 dll 版本而我的 dll 没有切换时,它可能会中断。您能否分享有关处理此类差异的最佳方法的文档?
-
破坏依赖项更改将被视为破坏运行时更改,并且不会自动推送到现有功能应用程序。
标签: azure azure-functions