让我们想到一个像这样的界面:
public interface ITest
{
void DoSomething();
}
我不想实现此接口,并要求Ninject生成实现它的代理类。然后拦截DoSomething方法。有可能吗?
答案 0 :(得分:0)
据我所知,开箱即用的ninject不支持没有实现的拦截代理(i.E.类继承自接口)。 如果你想要一个仅由拦截器实现的接口代理,没有类,那么你可以使用castle.dynamicproxy“没有目标的接口代理”(参见http://docs.castleproject.org/Tools.Kinds-of-proxy-objects.ashx),但你必须自己实现绑定糖。
或者您可以尝试使用https://github.com/ninject/ninject.extensions.interception 和.Bind()。ToConstant(Mock.Of).Intercept()。With(new SomeInterceptor);。