2012-05-11 75 views
1

是否有可能將Interceptor配置爲僅掛接特殊接口或基類的方法? 目前我已經註冊了與一個數據庫的連接範圍一起工作的Interceptor。現在我添加了另一個作用於另一個數據庫的作用域,並希望添加另一個攔截器,該攔截器將鉤住第二個作用域的方法可以通過xml文件配置攔截器,而不是檢查調用屬性的目標。將windsor攔截器配置爲僅掛鉤標記的方法

我已經通過添加的成分攔截:

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

AFAIK這個攔截器攔截在溫莎容器註冊的所有類的所有方法。

我魔杖可添加這樣的事情^

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

這個問題不是很清楚。你可以重新說明嗎? –

+0

@KrzysztofKoźmic,我填充問題的身體,請看看。 –

+2

你看過http://stackoverflow.com/questions/420891/how-do-i-tell-windsor-to-add-an-interceptor-to-all-components-registered-that-im? – Maciej

回答

2

你需要創建自己的AbstractFacility實現你想要的行爲。從本質上講,你需要實現類似Mikael Sundberg在回答this問題時所做的一些事情。

+0

謝謝,我想這是我在這種情況下能做的最好的。 –