2
Microsoft Azure中的My DeadLetter队列(针对主题)当前包含60,000条记录。我想澄清这一点,但我似乎无法找到任何有关如何做到这一点的信息。我试过使用服务总线浏览器,但花了很长时间试图删除1000个项目。您是否可以清除Azure中的DeadLetter队列
是否可以在一个语句中执行此操作,还是必须删除该主题并重新创建它。
Microsoft Azure中的My DeadLetter队列(针对主题)当前包含60,000条记录。我想澄清这一点,但我似乎无法找到任何有关如何做到这一点的信息。我试过使用服务总线浏览器,但花了很长时间试图删除1000个项目。您是否可以清除Azure中的DeadLetter队列
是否可以在一个语句中执行此操作,还是必须删除该主题并重新创建它。
string connectionString = ConfigurationManager.AppSettings["connectionString"];
ServiceBusConnectionStringBuilder builder = new ServiceBusConnectionStringBuilder(connectionString);
MessagingFactory factory = MessagingFactory.CreateFromConnectionString(builder.ToString());
SubscriptionClient deadletterClient = factory.CreateSubscriptionClient(yourtopicName, "yoursubscriptionName/$DeadLetterQueue");
while(true)
{
BrokeredMessage msg = deadletterClient.Receive();
if(msg != null)
{
msg.Complete();
}
else
{
break;
}
}
我希望这段代码能帮到你! – Amit
请解释你的代码 –
让我们假设我们有一个主题名称为abc并且订阅了xyz ..我需要访问这个(xyz)订阅的死信队列消息。我们现在可以通过将主题名称和订阅名称传递给createsubscriptionclient方法来创建订阅客户端。由于我们需要访问DLQ,因此我们通过将/ $ Deadletterqueue添加到订阅名称来给出其路径.DLQ消息可以通过调用接收方法..我刚才看到我需要编辑上面写的代码片段,同时给订阅名称.. – Amit