1
我有Ninject 3.0和拦截WCF方法的问题。拦截dosn't与WCF和Ninject 3.0工作
我使用TaskService
<%@ ServiceHost Language="C#" Debug="true" Service="Fasade.TaskService" Factory="Ninject.Extensions.Wcf.NinjectServiceHostFactory"%>
,我的配置是:
var settings = new NinjectSettings {LoadExtensions = false};
IKernel kernel = new StandardKernel(
new NinjectSettings {LoadExtensions = false},
new WcfModule(),
new DynamicProxyModule()
);
kernel.Bind<ITaskService>().To<TaskService>().InRequestScope().Intercept().With(new ServiceInterceptor());
ServiceInterceptor实施IInterceptor,
当我使用单元测试内核,ninject使用DynamicProxy对象ITaskService的实施,但它不适用于WCF。
我不知道为什么NinjectServiceHostFactory不使用DynamicProxy和Interception来返回ITaskService的实现。取而代之的
kernel.Bind<ITaskService>().To<TaskService>().
InRequestScope().Intercept().With(new ServiceInterceptor())