我有一个简单的界面:
public interface ITest
{
void Method1();
void Method2();
}
和实施:
public class Test:ITest
{
public void Method1()
{
}
public void Method2()
{
//Method1();
}
}
自定义拦截器:
public class CustomInterceptor:IInterceptor
{
public void Intercept(IInvocation invocation)
{
invocation.Proceed();
}
}
现在,当我在那里执行两种方法时:
ITest obj = getting through ninject
obj.Method1();
obj.Method2();
我的拦截器调用了两次没关系。但是当我取消注释 Method2() 的主体时,不会调用 Method1() 的拦截器。我正在寻找该怎么做,因为我希望拦截器被解雇。当我从第二个调用 Method1 时,我知道生成的代理不会调用它,这就是它不起作用的原因。但是有可能以同样的方式做到这一点吗?