2017-09-17 53 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!你已经救了我的一天!非常感谢! –