Microsoft.Azure.ServiceBus .net standard - 如何批量接收
Microsoft.Azure.ServiceBus .net standard - How To Batch Receive
我希望将一些使用 Microsoft.ServiceBus 的作品迁移到 Microsoft.Azure.ServiceBus。这样我们就可以以 .net 标准为目标。
前面的代码使用 ReceiveBatchAsync 以便在一次调用中检索多条消息。
在新的命名空间中,我看不到这样做的方法。
设计中是否有一些新的东西使它变得多余,或者 1.0.0 发布版本只完成了部分?
最佳实践指南似乎参考了 Microsoft.ServiceBus 版本。
批处理方法现在也只调用 ReceiveAsync
,使用带有 maxMessageCount
参数的重载。
/// <summary>
/// Receives a maximum of <paramref name="maxMessageCount"/> messages from
/// the entity defined by IReceiverClient.Path using ReceiveMode mode.
/// </summary>
/// <param name="maxMessageCount">The maximum number of messages that will
/// be received.</param>
/// <returns>List of messages received. Returns null if no message is found.</returns>
Task<IList<Message>> ReceiveAsync(int maxMessageCount);
Microsoft.Azure.ServiceBus 2.0 版不支持批量接收消息。唯一的方法是使用消息泵,在 Microsoft.ServiceBus.Messaging 中被称为 OnMessage,在 .Net Standard nuget 包中被称为 RegisterMessageHandler .
Sean Feldman 在这里对这两个客户进行了很好的比较:
Microsoft.Azure.ServiceBus 仍在开发中,截至目前(2018 年 3 月),它仍然缺乏实体创建支持,因此您无法创建或更新主题订阅。
我希望将一些使用 Microsoft.ServiceBus 的作品迁移到 Microsoft.Azure.ServiceBus。这样我们就可以以 .net 标准为目标。
前面的代码使用 ReceiveBatchAsync 以便在一次调用中检索多条消息。
在新的命名空间中,我看不到这样做的方法。
设计中是否有一些新的东西使它变得多余,或者 1.0.0 发布版本只完成了部分?
最佳实践指南似乎参考了 Microsoft.ServiceBus 版本。
批处理方法现在也只调用 ReceiveAsync
,使用带有 maxMessageCount
参数的重载。
/// <summary>
/// Receives a maximum of <paramref name="maxMessageCount"/> messages from
/// the entity defined by IReceiverClient.Path using ReceiveMode mode.
/// </summary>
/// <param name="maxMessageCount">The maximum number of messages that will
/// be received.</param>
/// <returns>List of messages received. Returns null if no message is found.</returns>
Task<IList<Message>> ReceiveAsync(int maxMessageCount);
Microsoft.Azure.ServiceBus 2.0 版不支持批量接收消息。唯一的方法是使用消息泵,在 Microsoft.ServiceBus.Messaging 中被称为 OnMessage,在 .Net Standard nuget 包中被称为 RegisterMessageHandler .
Sean Feldman 在这里对这两个客户进行了很好的比较:
Microsoft.Azure.ServiceBus 仍在开发中,截至目前(2018 年 3 月),它仍然缺乏实体创建支持,因此您无法创建或更新主题订阅。