私はrebus実装でMSMQトランスポートを使用しています。ハンドルRebus MSMQキュー削除
BuiltinHandlerActivator handlerActivator;
this.handlerActivator.Handle<TransportMessage>
(this.HandleTransportMessageAsync);
var bus = Configure.With(this.handlerActivator)
.Transport(t => t.UseMsmq(this.SenderName))
.Routing(r => r.TypeBased().AddEndpointMappingsFromAppConfig())
.Start();
私はいくつかのいずれかが誤っスヌープ/ COMPMGMT.MSCを使用してメッセージ・キューを削除した場合に例外/エラーを処理したい:以下はREBUSサービスを開始するためのコードです。私はメッセージキューイングでは、手動でMSMQメッセージキューを削除すると
は、我々は
REBUSワーカーキューが削除されたテキストにエラーが発生する - これ以上のメッセージ
を受信しません。
だから、知りたいRebusでこの例外を処理し、コールバックや他の方法で供給することは可能ですか?
Rebus.MSMQ名前空間にMsmqTransportというクラスがあり、メソッドAddQueueCallbackが同様のコールバックを提供することがわかりました。私はRebus/MSMQの初心者ですから、これを使う方法を理解することはできません。どんなサポートも役に立ちます。
お返事ありがとうございます。もう一度確認したいのですが、この例外を処理することはできません(編集で述べたように簡単なメッセージを表示するには)?もう一つのことバックグラウンドタイマーワーカーでMsmqUtil.QueueExistsを使用して、ユーザーフレンドリーなメッセージが表示されない場合にキューが存在するかどうかを確認できますか? –
はい:) :) :) :) – mookid8000
(StackOverflowの15文字分の制限に達するためにそこに多くの笑顔を追加する必要がありました.... :)) – mookid8000