2011-08-08 6 views
4

nserviceアプリケーションを作成しました。私のサービスを開始するときにCompletionMessageがあるのはなぜですか?

アプリケーション、その後B.

以下

をキューに別のメッセージを送信キューA. からのメッセージがある場合は何らかの処理をして、Aをキューに耳を傾け、私は私のnserviceバス

_bus = NServiceBus.Configure.With() 
        .Log4Net() 
        .DefaultBuilder() 
        .XmlSerializer() 
        .MsmqTransport() 
         .IsTransactional(true) 
         .PurgeOnStartup(false) 
        .UnicastBus() 
         .ImpersonateSender(false) 
         .LoadMessageHandlers() 
        .CreateBus() 
        .Start(); 
を開始する方法です私は自分のアプリケーションを起動し

<MsmqTransportConfig 
    InputQueue="DemoQueueA" 
    ErrorQueue="DemoQueueAError" 
    NumberOfWorkerThreads="1" 
    MaxRetries="5" 
/> 

<UnicastBusConfig DistributorControlAddress="" DistributorDataAddress=""> 
    <MessageEndpointMappings> 
     <add Messages="Demo.Messages" Endpoint="DemoQueueB"/> 
    </MessageEndpointMappings> 
</UnicastBusConfig> 

そして、ここでは、コンフィギュレーションです。 「DemoQueueB」

<?xml version="1.0"?> 
<Messages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.net/NServiceBus.Unicast.Transport"> 
    <CompletionMessage> 
     <ErrorCode>0</ErrorCode> 
    </CompletionMessage> 
</Messages> 

だから私のアプリケーションに何か問題があるとのメッセージが常にありますか?私はQueueBに何も送っていませんでした。 空のアプリケーションです。

答えて

6

CompletionMessageは、NServiceBusが自身を管理するために使用する内部メッセージタイプの1つです。 NServiceBusは、IBus.Return()メソッドを介してリターンコードを渡し、サブスクライブおよびサブスクライブ要求を確認するために、自身を初期化するためにNServiceBusを使用します。

一般に、これらのメッセージは完全に無視する必要があります。

関連する問題