【发布时间】:2019-10-17 11:59:51
【问题描述】:
我想使用唯一标识符作为用户输入将消息处理集成回队列。如何在一次调用中从死信中获取所有消息,而不是多次循环?
var msRequestIdArg = MsRequestIds.Split('\n').Select(e => e.Trim()).ToList();
var msRootRequestArg = MsRootRequestIds.Split('\n').Select(e => e.Trim()).ToList();
var queueClient = QueueClient.CreateFromConnectionString(ServiceBusConnectionString, QueueName);
var factory = MessagingFactory.CreateFromConnectionString(ServiceBusConnectionString);
var deadLetterPath = QueueClient.FormatDeadLetterPath(QueueName);
var deadLetterQueueReceiver = factory.CreateMessageReceiver(deadLetterPath, ReceiveMode.PeekLock);
deadLetterQueueReceiver.PrefetchCount = 10;
var messageResponse = new List<Tuple<string, bool, string>>();
var counter = msRequestIdArg.Count + msRootRequestArg.Count;
while (counter > 0)
{
var brokeredMessage = await deadLetterQueueReceiver.ReceiveAsync().ConfigureAwait(false);
【问题讨论】:
标签: c# azure servicebus