2013-03-21 97 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