2013-03-21 100 views
2

我想在一個特定的順序執行攔截器,我將它們綁定使用InterceptorAttribute這樣的類:城堡溫莎攔截器 - 訂單?

[Interceptor(typeof(type1))] 
[Interceptor(typeof(type2))] 
[Interceptor(typeof(type3))] 
public class SomeClass {} 

但不幸的是,它看起來像,而不是運行TYPE1攔截,那麼2型和3型,城堡以其他順序運行它們。我如何強制特定的訂單?可能嗎?

[更新]

我試圖與配置文件 - 它似乎工作,但我更喜歡的屬性,似乎更容易。

+0

而不是使用攔截,請嘗試應用裝飾器。 – Steven 2013-04-01 15:17:00

回答

1

通過屬性應用的攔截器是非確定性排序的。

推薦的方法是use the registration API

+0

我想你是對的,所以會標記爲答案,但它有點令人失望...... :( – Klotin 2013-04-02 14:30:18

+0

@Klotin你可以通過自定義屬性和'IContributeComponentModelConstruction'實現獲取它的屬性。 – 2013-04-02 21:01:24