攔截器

註冊元件時,請使用 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)));