我在我的 ASP MVC 3 项目中使用 Ninject,我修改了 global.asax 文件(像往常一样),然后像这样创建了一个类 NinjectControllerFactory:
public class NinjectControllerFactory : DefaultControllerFactory
{
private IKernel ninjectKernel;
public NinjectControllerFactory()
{
ninjectKernel = new StandardKernel();
AddBindings();
}
protected override IController GetControllerInstance(RequestContext requestContext,
Type controllerType)
{
return controllerType == null
? null
: (IController)ninjectKernel.Get(controllerType);
}
private void AddBindings()
{
// put additional bindings here
ninjectKernel.Bind<IServiceName>().To<ConcreteClass>();
}
}
这一切都很好。
现在我想将我的 Entity 框架上下文对象添加到绑定中,这样我就不必为每个服务创建它的新实例。
谁能告诉怎么做?
我应该创建一个只定义实体框架上下文的新接口吗?
谢谢