2015-09-17 30 views
2

Microsoft Azure中的My DeadLetter隊列(針對主題)當前包含60,000條記錄。我想澄清這一點,但我似乎無法找到任何有關如何做到這一點的信息。我試過使用服務總線瀏覽器,但花了很長時間試圖刪除1000個項目。您是否可以清除Azure中的DeadLetter隊列

是否可以在一個語句中執行此操作,還是必須刪除該主題並重新創建它。

回答

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;  
       }   
} 
+0

我希望這段代碼能幫到你! – Amit

+0

請解釋你的代碼 –

+0

讓我們假設我們有一個主題名稱爲abc並且訂閱了xyz ..我需要訪問這個(xyz)訂閱的死信隊列消息。我們現在可以通過將主題名稱和訂閱名稱傳遞給createsubscriptionclient方法來創建訂閱客戶端。由於我們需要訪問DLQ,因此我們通過將/ $ Deadletterqueue添加到訂閱名稱來給出其路徑.DLQ消息可以通過調用接收方法..我剛纔看到我需要編輯上面寫的代碼片段,同時給訂閱名稱.. – Amit

相關問題