2017-07-15 51 views
1

我想調試一個現有的服務總線,它使用NServiceBus從MSMQ獲取消息。如何調試使用MSMQ獲取消息的服務?

這是我的代碼中處理MFNM02消息的消息處理程序。

public class ITKMFNM02Handler : Framework.Messaging.BusEventHandler<MFNM02> 
{ 
    protected override void HandleMessage(MFNM02 message) 
    { 
     ProcessMessages eng = new ProcessMessages(); 

     eng.ProcessMFNM02(message); 
    } 
} 

這些消息由下面的線中的app.config綁定到特定隊列

<UnicastBusConfig> 
<MessageEndpointMappings> 
    <add Messages="Ascribe.EIE.Messages.ITK.V1" Endpoint="[email protected]" /> 
</MessageEndpointMappings> 
</UnicastBusConfig> 

現在我使用隊列瀏覽器直接把消息中的「eiequeue」 MSMQ但消息是沒有被服務巴士接走。

請告訴我,我很想念

回答

2

NServiceBus消息具有特定的格式,只是推消息通過隊列瀏覽器意味着他們無法獲得通過NSB處理。您需要在郵件中包含格式正確的郵件正文以及預期的郵件正文。

您可以使用我們的文檔網站here的本地發送助手之一來代替Queue Explorer。

此外,如果您在端點上配置審覈隊列,則可以使用該端點處理實際消息的副本,然後使用Queue Explorer可以修改它們的副本並將它們發送回原始隊列以獲取他們重新處理。

+0

哇,太棒了,爲我工作。我在那裏發送格式不正確的消息。謝謝 –

+0

很高興它解決了!請記住將其標記爲接受其他人蔘考的答案。 –