c# - 使用 Azure BrokeredMessage 在不知道类型的情况下获取正文

标签 c# azure azureservicebus

当您在 Azure 服务总线中使用中转消息时,可以通过调用 .GetBody 检索消息正文。代码很简单:

var msg = subscription.Receive();
MyPayload payload = msg.GetBody<MyPayload>();

但是,有没有一种方法可以在不明确知道 body 对象的类的情况下检索 Body?

var msg = subscription.Receive();
Type bodyType = Type.GetType( msg.ContentType);

var payload = msg.GetBody<bodyType>();

最佳答案

如果目的是仅获取消息正文而不考虑内容,您可以将其作为流获取。

Stream stream = message.GetBody<Stream>();
StreamReader reader = new StreamReader(stream);
string s = reader.ReadToEnd();

关于c# - 使用 Azure BrokeredMessage 在不知道类型的情况下获取正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15441853/

相关文章:

asp.net-core - .NET Core Azure servicebusqueue 消息数

面向非 IDE Java 开发人员的 C# SDK

azure - 使用 Terraform 动态分配 Azure Blob 存储内容类型

azure - 如何加快WebJob中Azure ServiceBus主题的读取速度?

azure - 无论如何, azure 中是否有知道其他角色的实例是否已启动?

sql - 如何在不关闭防火墙的情况下允许未知 IP 地址访问 Azure SQL 数据库?

Azure Webjob 支持异步执行(如果支持)如何?

c# - 嵌入式 C 中的 Modbus RTU 实现

C# BigInteger.ModPow 错误?

c# - 如何使用 C# 或 jquery 匹配段落中的重复单词?