gpt4 book ai didi

c# - 如何访问 Azure Function 2 中的 Azure 服务总线消息属性

转载 作者:行者123 更新时间:2023-11-30 20:26:29 26 4
gpt4 key购买 nike

使用 azure 函数版本 1 可以接受消息作为 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

There was an error deserializing the object of type Microsoft.ServiceBus.Messaging.BrokeredMessage. The input source is not correctly formatted. System.Private.DataContractSerialization: The input source is not correctly formatted.

是否可以使用函数 2.0 获取消息属性

最佳答案

在新世界 (azure functions .net5) 中,您不能再使用代理消息。新图书馆不适合它。

函数应用声明不再是[FunctionName=]而是[Function=您不能再接收 Message 或字节,而只能接收字符串。

例子:

 [Function("TestFA")]
public async Task Run([ServiceBusTrigger(topicName, subscriberName, Connection = ???)] string messageText, string id, FunctionContext executionContext)

魔法现在在 FunctionContext executionContext 中你可以从中获得属性例如

KeyValuePair<string, object> props = executionContext.BindingContext.BindingData.Where(x => x.Key == "UserProperties").FirstOrDefault();

关于c# - 如何访问 Azure Function 2 中的 Azure 服务总线消息属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49860852/

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