拦截器
注册组件时,请使用 Interceptors()
方法指定要用于此组件的拦截器/拦截器类型:
TInterceptor
必须实现 IInterceptor
接口
按类型划分的单个拦截器:
container.Register(
Component.For<MyInterceptor>(),
Component.For<IFoo>()
.ImplementedBy<Foo>()
.Interceptors<MyInterceptor>());
按类型划分的两个拦截器:
container.Register(
Component.For<MyInterceptor1>(),
Component.For<MyInterceptor2>(),
Component.For<IFoo>()
.ImplementedBy<Foo>()
.Interceptors<MyInterceptor1, MyInterceptor2>());
按类型划分的 2 个以上拦截器:
container.Register(
Component.For<MyInterceptor1>(),
Component.For<MyInterceptor2>(),
Component.For<MyInterceptor3>(),
Component.For<IFoo>()
.ImplementedBy<Foo>()
.Interceptors(typeof(MyInterceptor1),
typeof(MyInterceptor2),
typeof(MyInterceptor3)));