首页 > 解决方案 > 如何故意死信一条消息是 azure functions v2

问题描述

这个问题与其他有答案的问题相似,但我认为 AF v2 可能会改变(我在没有 v1 经验的情况下跳入 v2)。AF v2集成的用于与ServiceBus交互的程序集似乎是Microsoft.Azure.ServiceBus,它有一个名为“Message”的类,与其他微软服务总线程序集中的“BrokeredMessage”不太一样。两者之间的一个关键区别是 BrokeredMessage (在几乎所有文档、示例和我能找到的任何其他线程中都引用了它)有一个 .Deadletter() 方法,而 Message 没有。当我无法访问收到消息的客户端或接收者时,如何故意将消息死信?

(我已经看到有关克隆消息、放置我自己的“死信”队列以及让 AF 提交原始消息的建议——我认为这不是一个足够的解决方案。)

标签: azureazure-functionsservicebus

解决方案


我还没有在函数环境中证明它,但是根据我在 github 上打开的票证(https://github.com/Azure/azure-webjobs-sdk/issues/1986),webjobs v3 支持同时绑定 Message和在函数触发器中接收到它的 MessageReceiver,然后可以使用 MessageReceiver 对消息进行死信。


推荐阅读