gpt4 book ai didi

Azure Functions dll 版本不匹配

转载 作者:行者123 更新时间:2023-12-03 01:49:29 24 4
gpt4 key购买 nike

我们有一个 Azure 函数,它通过私有(private) Nuget feed 引用外部程序集。

我们遇到的问题是我们有两个不同版本的 Microsoft.Azure.WebJobs.dll - 一个是我们的 nuget 包的依赖项,另一个我假设是由运行时提供的。

 error CS1503: Argument 2: cannot convert from 'Microsoft.Azure.WebJobs.ICollector<Microsoft.WindowsAzure.Storage.Table.ITableEntity> [D:\Program Files (x86)\SiteExtensions\Functions\1.0.10635\bin\Microsoft.Azure.WebJobs.dll]' to 'Microsoft.Azure.WebJobs.ICollector<Microsoft.WindowsAzure.Storage.Table.ITableEntity> 

我发现这个问题说不支持绑定(bind)重定向:

Azure Functions binding redirect

我们可以尝试删除对该库的依赖,或者我们可以匹配 Azure Functions 使用的版本,但我认为无论如何使用 Microsoft.WindowsAzure.Storage 都会遇到同样的问题。

请多多指教!

最佳答案

您是对的,不支持绑定(bind)重定向。运行时对 WebJobs SDK 和存储库有自己的依赖关系,因此传递到函数中的对象将来自这些版本。我建议删除对其他版本的依赖并捕捉到我们的版本。请注意,对于这些库,您不必添加自己的包引用,您可以通过以下方式在函数代码中引用我们的包:

#r "WindowsAzure.Storage"

您不需要添加明确的 #r WebJobs SDK 类型的引用(例如 ICollector<T> ) - 运行时隐式添加该程序集。当然,这仅适用于我们为您编译的函数代码,不适用于来自您的外部包的代码。

将来我们可能会改进这方面的东西,但现在如果您尝试使用冲突的版本,您就会逆流而上。

关于Azure Functions dll 版本不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40803150/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com