我有一个抽象基本控制器,它有一个构造函数,我希望在构建控制器时由autofac填充该构造函数。使用autofac将构造函数注入基类
public abstract class BaseController : Controller
{
protected ILogger { get; private set; }
protected BaseController()
{
}
protected BaseController(ILogger logger)
{
Logger = logger;
}
}
这似乎不工作,当我从它派生出一个控制器。
我只能从控制器显式调用构造函数时才能使用它。这是做到这一点的正确方法吗?
public class PublicController : BaseController
{
public PublicController()
{
}
public PublicController(ILogger logger) : base(logger)
{
}
}
此外,使用MVC一体化组件,还有似乎没有被共享容器其他类做自己的解决办法。我在某处读到这一点并不鼓励,为什么不呢?这只是为了解耦任何单个ioc框架的依赖性吗?构造函数只注入的方式来填充依赖性的依赖性。
感谢