我有一个由于FileLoadException
而无法运行的Azure函数(.netstandard 2.0)。通常,我将使用Fuslog找出缺少的依赖项,但是我没有找到一种方法来运行运行Azure函数的计算机的RDP。现在,通过各种日志,我仅获得以下信息:
System.IO.FileLoadException:无法加载文件或程序集
'Microsoft.WindowsAzure.Storage,版本= 9.1.1.0,文化=中性,
PublicKeyToken = 31bf3856ad364e35'。找不到或加载特定的
文件。
我可以通过服务器资源管理器看到文件的正确版本。因此,这似乎是一个依赖性问题。
我该如何调试?
最佳答案
基本上,您的Function App是一个插件,可以将其加载到运行时中。运行时具有自己的依赖关系,如果碰巧使用相同的依赖关系但版本更高,则会出现运行时错误。WindowsAzure.Storage
肯定在此列表中。
对于运行时v1,找出确切版本的最可靠方法是查看this file,仅搜索有问题的软件包。
运行时v2尚无此功能。
然后将您的引用降级为相同版本。
this issue中讨论了更好的解决方案。
关于c# - 如何在Azure函数中调试FileLoadException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49693145/