我正在尝试使用Mehdi El Gueddari 的 DBContextScope 解决方案并将其 DI 到我的 WebAPI2 控制器中,如下所示:
NinjectConfigurator.cs:
container.Bind<IUserProfileInquiryProcessor>().To<UserProfileInquiryProcessor>().InRequestScope();
container.Bind<IDbContextScopeFactory>().To<DbContextScopeFactory>().InSingletonScope();
用户配置文件控制器.cs:
public UserProfileController(
IUserProfileInquiryProcessor userProfileInquiryProcessor,
IDbContextScopeFactory dbContextScopeFactory)
{
_dbContextScopeFactory = dbContextScopeFactory;
_userProfileInquiryProcessor = userProfileInquiryProcessor;
}
但是,Ninject 似乎无法注入IDbContextScopeFactory
并返回以下异常:
尝试创建类型为“UserProfileController”的控制器时发生错误。确保控制器有一个无参数的公共构造函数。
我知道这是IDbContextScopeFactory
无法解决的,如果我从构造函数中(仅)省略了该参数,则会创建控制器。
谁能建议我做错了什么或我应该尝试什么?谢谢。