2017-09-17 80 views
0

我想通過它來處理我的消息中毒並不會觸發我的毒藥方法。我下面this article from Microsoft,這是我的代碼:服務器佈線的Webjob消息中毒(類型隊列)

public static void ProcessQueueMessage([ServiceBusTrigger("emailqueue")] EmailModels.EmailSendModel message, TextWriter log,[SendGrid()] out Mail mail) 
    { 
     log.WriteLine(message); 
     mail = new Mail(){Subject = message.Title}; 
     mail.From = new Email("[email protected]"); 
     mail.AddPersonalization(new Personalization() 
     {Tos= message.To.Select(t=>new Email (t.Email)).ToList()}); 
     mail.AddContent(new Content("text/plain", $"The message {message.Body}' was successfully processed.")); 
    } 

    public static void ProcessPoisonMessage([ServiceBusTrigger("emailqueue-poison")] EmailModels.EmailSendModel message, TextWriter logger) 
    { 
     logger.WriteLine($"start poisoning"); 
     logger.WriteLine($"Poisoning message for proposal id {message.ProposalId} for list {JsonConvert.SerializeObject(message.To)}"); 
    } 

send方法被擊中5時好時壞(故意)但隨後中毒不被打到我的消息在死信結束消息沒有任何操作:|

我在做什麼錯?

enter image description here

回答

1

你報的描述Azure存儲隊列,而不是服務總線的文章。它們是不同的服務,並且有毒消息處理有很大不同。

嘗試

[ServiceBusTrigger("emailqueue/$DeadLetterQueue")] 
+0

感謝您的答覆標記您的觸發器。那麼,我如何中毒這些消息呢?我已經安裝了Microsoft.Azure.ServiceBus v.1.0.0 –

+0

Dude!你已經救了我的一天!非常感謝! –