将依赖项注入基类

Jam*_*xon 2 dependency-injection ninject ninject-2 asp.net-mvc-2

我开始使用依赖注入,并且在向基类注入依赖项时遇到了一些麻烦.

我有一个BaseController控制器,我的其他控制器继承.在这个基本控制器内部,我做了一些检查,例如确定用户是否具有查看当前页面的正确权限,检查是否存在某些会话变量等.

我在这个基本控制器内部有一个依赖项,我想使用Ninject注入,但是当我设置它时,就像我对其他依赖项一样,我告诉编译器:

错误1'MyProject.Controllers.BaseController'不包含带0参数的构造函数

这是有道理的,但我只是不确定如何注入这种依赖.我是否应该使用这种使用基本控制器的模式,还是应该以更有效/更正确的方式进行此操作?

Ars*_*eny 11

你的BaseController构造函数应该是这样的

BacseConctoller(Info info)
{
    this.info = info
}
Run Code Online (Sandbox Code Playgroud)

然后为所有继承类构造它们

ChildController(Info info):base(info)
{
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,您可以将Info对象注入基本控制器类