Ninject übergeben Konstruktorargument typeof Klasse, die die Schnittstelle implementiert

Ich versuche, Ninject mit meinem Anwendungsprotokollierungs-Wrapper zu verwenden.

Hier ist der Wrapper:

public class NLogLogger : ILogger
{
    private readonly Logger _logger;

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

Wie Sie sehen können, gebe ich den Typ an den Loggers Constrctor weiter, daher würde ich ihn folgendermaßen verwenden:

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

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

Now Ich kann anscheinend nicht herausfinden, wie ich mit Ninject etwas Ähnliches machen kann. Hier ist mein Bindemodul:

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

Now offensichtlich bekomme ich eine Ausnahme ausgelöst, weil es den Typ nicht in den Konstruktor injizieren kann. Irgendwelche Ideen, wie ich das machen kann?

Fehler beim Aktivieren von Type

Es sind keine passenden Bindungen verfügbar, und der Typ ist nicht selbstbindbar.

Aktivierungspfad:

4) Einfügung des Abhängigkeitstyps in den Parameter t des Konstruktors vom Typ NLogLogger

3) Einspritzen des Abhängigkeits-ILoggers in den Parameter-Logger des Konstruktors vom Typ NzbGetSettingsService

2) Einfügung der Abhängigkeit ISettingsService {NzbGetSettingsDto} in den Parameter nzbGetService des Konstruktors vom Typ DashboardController

1) Anfrage für DashboardController