4

これが私の設定です

  • キャッスルウィンザーは私のコンテナです
  • NServiceBus自体が内部で独自のコンテナを使用しており、デフォルトではSpringです。
  • PubSub構成を実装しています。

わかりました。IWantToRunAtStartupクラス内でBus.Publishが発生している場合は、すべて問題ありません。たとえばRun()でのテストとして、タイマーを開始すると、サービススタイルのループに入ります。

ただし、アプリからNServiceBusを抽象化し、アプリを実行したい場合はどうすればよいですか。

new CustomPulisherClass().Notify(ISomeMessage msg);

この状況で、CustomPublisherClassを実装するにはどうすればよいですか。

私の混乱は、NServiceBusがすでにサービスとして実行されており、すでに「開始」されているという事実から来ています。Busオブジェクトの正しいインスタンスを取得するにはどうすればよいですか?

4

1 に答える 1

3

Windsorを内部コンテナーとして使用するようにNServiceBusを構成する必要があります。

http://sourceforge.net/apps/mediawiki/nservicebus/index.php?title=Additional_containers

そうすると、ウィンザーのインスタンスで正しいIBusが利用できるようになります

于 2010-05-19T06:17:12.787 に答える