Module 为什么不调用Ninject拦截器?

Module 为什么不调用Ninject拦截器?,module,inversion-of-control,ninject,interceptor,Module,Inversion Of Control,Ninject,Interceptor,快速提问-我无法理解以下内容: 我写了一个Ninject模块: public void OnLoad(IKernel kernel) { kernel.Bind<GenericRepository>() .ToConstructor(syntax => new GenericRepository(new DbContext())) .Intercept() .With<LogInterceptor>

快速提问-我无法理解以下内容:

我写了一个Ninject模块:

public void OnLoad(IKernel kernel)
{
    kernel.Bind<GenericRepository>()
          .ToConstructor(syntax => new GenericRepository(new DbContext()))
          .Intercept()
          .With<LogInterceptor>();
}
应用程序构建,模块加载,存储库返回实体,但是-如果我在拦截器中放置断点,它永远不会被调用


有什么想法吗?

如果我没记错的话,Ninject拦截依赖于Castle代理技术。。。因此,它只能与虚拟成员一起工作。

您的方法是否在GenericRepository上是虚拟的?因为要拦截的方法/属性必须是虚拟的。我不这么认为,我有ef4prs通用存储库。是的,我把所有的方法都虚拟化了,现在它就像一个魔咒一样工作!谢谢
public void Intercept(IInvocation invocation)
{
    invocation.proceed();
}