2016-12-20 20 views
1

IHandleMessages.Handleが呼び出される前にアクションを実行する方法がありますか?RebusRebus - メッセージが処理される前にアクションを実行する

私はlog4netのログの相関IDを設定したいと思っています。

私は

System.Diagnostics.Trace.CorrelationManager.ActivityId = Guid.NewGuid()

からGUIDを取得するために活動パターンコンバータを内蔵しています。しかし、私は、各ハンドルがアクティブになる前に、これを設定することができるようにしたいです。 私はこれを達成するための簡単で便利な方法は、各メッセージは、次のように処理される前に呼び出されるイベントデリゲートを設定することができますRebus.Events packageを含めることであろうREBUS

答えて

1

とコンテナとしてAutofacを使用しています:

Configure.With(...) 
    .(...) 
    .Events(e => 
    { 
     e.BeforeMessageHandled += (bus, headers, message, context, args) => 
     { 
      // do what you want in here :) 
     }; 
    }); 
+1

あなたは私の人生をいかに簡単に作っているのか分かりません:) このトランスポートを愛する! テスト済みで魅力的です – dariogriffo

+0

Rebus.Eventsはいつ安定したパッケージとしてリリースされる予定ですか?まだベータ版で – dariogriffo

+1

よく....十分な人がそれを試して、私に彼らの評決を与えたときに私はそれを解放する - あなたのプレリリース状態は障害ですか? – mookid8000

関連する問題