如何在Azure函数2中访问Azure Service Bus消息属性

使用版本1的Azure函数,可以将消息作为BrokeredMessage接受。

public static void Run([ServiceBusTrigger("MySServiceBus", "MySubscriptionName", AccessRights.Listen, Connection = "MyConnectionString")]BrokeredMessage message, TraceWriter log)

然后使用类似于以下的代码检索属性:

var MyProperty = message.Properties["MyMessageProperty"] as string

使用功能SDK的2.0版,我无法在没有得到反序列化错误消息的情况下将传入的对象转换为BrokeredMessage。

反序列化类型为Microsoft.ServiceBus.Messaging.BrokeredMessage的对象时发生错误。输入源的格式不正确。System.Private.DataContractSerialization:输入源的格式不正确。

是否可以使用功能2.0获取消息属性


汪汪一只猫
浏览 106回答 1
1回答

郎朗坤

运行时的2.0版已切换到基于.NET Standard的新Service Bus客户端库。BrokeredMessageclass不是该库的一部分,而是具有Message功能可比但API不同的类。您应该能够将输入参数绑定到此类,然后通过Message.UserProperties字典访问自定义属性。
打开App,查看更多内容
随时随地看视频慕课网APP