Ninject проходной конструктор аргумент typeof класса, который реализует интерфейс

Я пытаюсь использовать Ninject с моей оболочкой для регистрации приложений.

Вот обертка:

public class NLogLogger : ILogger
{
    private readonly Logger _logger;

    public NLogLogger(Type t)
    {
        _logger = LogManager.GetLogger(t.Name);
    }
}

Как вы видите, я передаю тип в constrctor логгеров, поэтому я бы использовал его следующим образом:

public class EntityObject
{
    public ILogger Logger { get; set; }

    public EntityObject()
    {
        Logger = new NLogLogger(typeof(EntityObject));
    }
}

Теперь я не могу понять, как сделать что-то подобное с помощью Ninject. Вот мой обязательный модуль:

public class LoggerModule : NinjectModule
{
    public override void Load()
    {
        Bind<ILogger>().To<NLogLogger>();
    }
}

Теперь, очевидно, я получаю исключение, потому что он не может внедрить тип в конструктор. Есть идеи, как я могу это сделать?

Ошибка при активации Типа

Соответствующие привязки недоступны, а тип не является самосвязываемым.

Путь активации:

4) Внедрение типа зависимости в параметр t конструктора типа NLogLogger

3) Внедрение зависимости ILogger в регистратор параметров конструктора типа NzbGetSettingsService

2) Инжекция зависимости ISettingsService {NzbGetSettingsDto} в параметр nzbGetService конструктора типа DashboardController

1) Запрос на DashboardController

Ответы на вопрос(1)

Ваш ответ на вопрос