Konfigurowanie punktu końcowego do działania zarówno jako pracownika, jak i subskrybenta

Czy można skonfigurować punkt końcowy, aby działał jako pracownik pobierający zadania od dystrybutora ORAZ subskrybować jakieś wiadomości?

Mam następujący scenariusz (dostosowany do terminologii sprzedaży)

*) centralny departament publikuje co jakiś czas listę nowych cen. Wszyscy pracownicy muszą zostać powiadomieni. Oznacza to, że pracownik powinien zapisać się na to wydarzenie.

*) gdy nowe zamówienie dotrze do centrali, wysyła je do dystrybutora, który wysyła je do następnego bezczynnego pracownika, który ma zostać przetworzony. Oznacza to, że pracownik musi być skonfigurowany do odbierania wiadomości od dystrybutora. Używam następującej konfiguracji:

 <MsmqTransportConfig
    InputQueue="worker"
    ErrorQueue="error"
    NumberOfWorkerThreads="2"
    MaxRetries="5"
  />

  <UnicastBusConfig
    DistributorControlAddress="distributorControlBus"
    DistributorDataAddress="distributorDataBus" >    
    <MessageEndpointMappings>
      <add Messages="Events" Endpoint="messagebus" />
    </MessageEndpointMappings>
  </UnicastBusConfig>

Kiedy konfiguruję go tylko jako pracownika lub tylko jako subskrybenta, wszystko działa zgodnie z oczekiwaniami, ale nie wtedy, gdy konfiguruję go jako oba.

Odkryłem, że wiadomość dociera do kolejki wejściowej centrali z adresem dystrybutora jako adresem zwrotnym zamiast adresu pracownika, a wydawca nie rozpoznaje w tym przypadku subskrybenta. Jakieś pomysły? Z góry dziękuję.

questionAnswers(2)

yourAnswerToTheQuestion