我正在使用 azure 服务总线来接收消息以处理我的后台进程。在我的后台进程中,我想从 azure 服务总线中清除已处理的消息。有什么方法或方法可以清除 azure service bus 消息???
问问题
1362 次
2 回答
1
阅读如何从队列中接收消息并确保使用_queueClient.Complete()
或_queueClient.Abandon()
完成每条消息。
于 2015-03-05T14:54:14.050 回答
0
您可以使用“Microsoft.ServiceBus.Messaging”并按排队时间清除消息。接收消息,按 ScheduledEnqueueTime 过滤,并在消息在特定时间入队时执行清除。
using Microsoft.ServiceBus.Messaging;
MessagingFactory messagingFactory = MessagingFactory.CreateFromConnectionString(connectionString);
var queueClient = messagingFactory.CreateQueueClient(resourceName, ReceiveMode.PeekLock);
var client = messagingFactory.CreateMessageReceiver(resourceName, ReceiveMode.PeekLock);
BrokeredMessage message = client.Receive();
if (message.EnqueuedTimeUtc < MessageEnqueuedDateTime)
{
message.Complete();
}
于 2018-08-24T10:08:26.767 回答