2

我在 Microsoft Azure 中的 DeadLetter 队列(针对某个主题)当前包含 60,000 条记录。我想清除这一点,但我似乎找不到任何有关如何执行此操作的信息。我尝试过使用服务总线资源管理器,但尝试删除 1000 个项目需要很长时间。

是否可以在一个语句中执行此操作,或者我必须删除该主题并重新创建它。

4

1 回答 1

0
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;    
                }        
}   
于 2017-02-23T14:42:42.697 回答