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())