1

让我们想想这样的接口:

public interface ITest
{
    void DoSomething();
}

我不想实现这个接口,请Ninject生成一个代理类来实现它。然后拦截 DoSomething 方法。可能吗?

4

1 回答 1

0

据我所知,开箱即用的 ninject 不支持没有实现的拦截代理(从接口继承的 iE 类)。如果您想要一个仅由拦截器实现的接口代理,没有类,那么您可以使用 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);。

于 2013-11-27T10:00:09.913 回答