У меня есть абстрактный базовый контроллер, у которого есть конструктор, который, как я надеялся, будет заполнен 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 intergration, похоже, нет способа поделиться контейнером для других классов, чтобы сделать свое собственное решение. Я где-то читал, что это не поощряется, почему бы и нет? Разве это просто для того, чтобы отделить зависимость какой-либо единой инфраструктуры ioc? Является ли инжектор конструктора единственным способом заполнения зависимостей от heirachy.
Спасибо