2012-05-11 3 views
1

インターセプタを特別なインターフェイスのメソッドまたは基本クラスのメソッドにフックするように設定する可能性はありますか? 現在、1つのDBへの接続範囲で動作するInterceptorを登録しました。今度はもう1つのスコープを追加して別のdbで作業し、別のスコープのメソッドをフックする別のインターセプタを追加します。呼び出しプロパティのターゲットを確認する代わりに、xmlファイル経由でインターセプタを設定することができます。表示されたメソッドのみをフックするようにwindsorインターセプタを設定してください

私はコンポーネントを経由してインターセプタを追加しました:

<component 
    type="Common.IoC.SessionScopeInterceptor, Common" 
    lifestyle="transient"> 
</component> 

私の知る限り、このインターセプタは、ウィンザーコンテナに登録されているすべてのクラスのすべてのメソッドをインターセプトします。

私はあなたの希望の動作を実装する独自のAbstractFacilityを作成する必要が

<component 
    type="Common.IoC.SessionScopeInterceptor, Common" 
    lifestyle="transient" 
    interceptOnlyVirtualMethods="true" 
    interceptClass="Common.IoC.SessionScope1, Common" 
    > 
</component> 
+0

質問はあまり明確ではありません。あなたはそれを元に戻すことができますか? –

+0

@KrzysztofKoźmic、私は質問体に住んでいた、plsは見てみましょう。 –

+2

あなたはhttp://stackoverflow.com/questions/420891/how-do-i-tell-windsor-to-add-an-interceptor-to-all-components-registered-that-imを見ましたか? – Maciej

答えて

2

^このような何かを追加するワンド。基本的に、あなたはthis質問への答えでMikael Sundbergがしたものに類似したものを実装する必要があります。

+0

ありがとう、私はこの状況でできることは最高だと思う。 –

関連する問題