異なる名前空間から異なるエンドポイントにメッセージを送信することにより、NServiceBus 構成でメッセージ エンドポイント マッピングを構成しようとしています。
そのため、web.config で次のように構成しました。
<MessageEndpointMappings>
<add Messages="Company.Messages.Accounts" Endpoint="ServiceInput" />
<add Messages="Company.Messages.Payments" Endpoint="ServiceInput" />
<add Messages="Company.Messages.Cancellations" Endpoint="ServiceInput" />
<add Messages="Company.Messages.Notifications" Endpoint="ServiceInput" />
</MessageEndpointMappings>
ただし、アプリケーションを起動すると、次の例外が発生します。
Spring.Objects.PropertyAccessExceptionsException: PropertyAccessExceptionsException (1 エラー); ネストされた PropertyAccessExceptions は次のとおりです: [Spring.Core.TypeMismatchException: プロパティ 'MessageOwners' の [System.Collections.Hashtable] 型のプロパティ値を必要な型 [System.Collections.IDictionary] に変換できません。内部例外: System.ArgumentException: 読み込みの問題メッセージ アセンブリ: Company.Messages.Payments ---> System.IO.FileNotFoundException: ファイルまたはアセンブリ 'Company.Messages.Payments' またはその依存関係の 1 つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。ファイル名: 「Company.Messages.Payments」
興味深いのは、Company.Messages.Accounts が見つかったように見えますが、2 番目に構成された行で失敗したことです。それらがすべて同じエンドポイントに移動するのが気に入らないのではないかと思いましたが、この構成を変更して異なるエンドポイントに移動しても、受け取ったエラー メッセージは変わりませんでした。
私は何を間違っていますか?メッセージを名前空間でセグメント化することはできませんか (私が見たのは、型とアセンブリによるものだけです)?
ありがとう、スティーブ