我有一个azure函数队列触发器。它在本地工作正常,但部署后就不行了。在Application Insights中,我可以看到下面的错误消息&队列触发器不会因为此异常而被调用。我有一个带有azure函数v3的.netcore 3.1应用程序。甚至我还将其升级到了.net6.0和azure函数v4。此外,我尝试升级,降级和安装一些软件包仍然没有解决这个问题。
如何修复System.TypeLoadException -索引方法“NameOfQueueTrigger”时出错。无法从程序集“Azure. Core”加载类型Azure.Core.SyncAsyncEventHandler?
1条答案
按热度按时间agyaoht71#
Microsoft已删除Azure门户功能应用程序部署上的. NET 3.1支持:
使用队列触发器在本地环境(VS代码)中创建. NET 3.1 Azure函数应用程序-本地测试:
将V3项目部署到V4 Azure门户功能应用程序时,收到以下警告,并在单击"仍要部署"选项后成功部署:
我已将队列触发器函数项目从. NET 3.1迁移到6,并将Azure Functions核心工具版本3迁移到4,并进行了以下更改:
更改
.csproj
文件中的版本后,它要求恢复丢失的依赖项,然后单击Restore:索引方法"NameOfQueueTrigger"时出错。未能从程序集"Azure. Core"加载类型Azure. Core. SyncAsyncEventHandler
1.检查
local.settings.json
和功能代码中定义的连接字符串是否相同,是否指向正确的存储帐户和正确的队列名称:1.关于类似问题,请参阅@MayankBargali-MSFT提供的MS Q & A 503163。