如何 send/Receive ServiceBus 消息中的数据 header
How to send/Receive data in ServiceBus message header
我正在使用 Azure 函数从服务总线发送和接收消息。我想在服务总线消息 header 中发送和接收 correlationId 以跟踪消息生命周期。
我从 ServiceBusExplore 发送第一个 JSON 负载,并获取文本如果使用 BrokeredMessage
的字符串
收件人代码
public static async Task RunAsync([ServiceBusTrigger("validate-trade", AccessRights.Manage,
Connection = "ServiceBusConnection")]BrokeredMessage message,
TraceWriter log)
{
string queueData = message.GetBody<string>();
}
低于错误
'message.GetBody<string>()' threw an exception of type 'System.Runtime.Serialization.SerializationException' string {System.Runtime.Serialization.SerializationException}
我也试过了
string s = receiveMessage.GetBody<string>(new DataContractSerializer(typeof(string)))
这应该是将任何服务总线消息的内容作为纯字符串读取的最安全方法:
string body;
using (var stream = message.GetBody<Stream>())
using (var streamReader = new StreamReader(stream, Encoding.UTF8))
{
body = streamReader.ReadToEnd();
}
我正在使用 Azure 函数从服务总线发送和接收消息。我想在服务总线消息 header 中发送和接收 correlationId 以跟踪消息生命周期。
我从 ServiceBusExplore 发送第一个 JSON 负载,并获取文本如果使用 BrokeredMessage
的字符串收件人代码
public static async Task RunAsync([ServiceBusTrigger("validate-trade", AccessRights.Manage,
Connection = "ServiceBusConnection")]BrokeredMessage message,
TraceWriter log)
{
string queueData = message.GetBody<string>();
}
低于错误
'message.GetBody<string>()' threw an exception of type 'System.Runtime.Serialization.SerializationException' string {System.Runtime.Serialization.SerializationException}
我也试过了
string s = receiveMessage.GetBody<string>(new DataContractSerializer(typeof(string)))
这应该是将任何服务总线消息的内容作为纯字符串读取的最安全方法:
string body;
using (var stream = message.GetBody<Stream>())
using (var streamReader = new StreamReader(stream, Encoding.UTF8))
{
body = streamReader.ReadToEnd();
}