Kann nicht in System.Web.Http.Filters.ActionFilterAttribute mit Unity-Bootstrapper für das ASP.NET-Web-API-Nuggetpaket injiziert werden

8

Ich kann keine Abhängigkeitsinjektion mit einer benutzerdefinierten ActionFilterAttribute-Klasse mithilfe des nuget-Pakets Unity bootstrapper for ASP.NET Web API ausführen.

Ich habe den Typ in UnityConfig registriert und benutze ihn woanders (benutze dort allerdings die Konstruktorinjektion) und es funktioniert gut.

%Vor%

Der Code wird erfolgreich aufgerufen, das instanziierte Objekt (settingService) ist jedoch null.

%Vor%

Was muss ich tun, damit das funktioniert? Ich habe lange gesucht und kann nur Beispiele für MVC oder für Web-API mit verschiedenen Abhängigkeitsinjektoren finden.

    
Michael Szabo 02.10.2013, 05:21
quelle

1 Antwort

8

Erstellen Sie zuerst ein IFilterProvider , das ein BuildUp ausführt und die Abhängigkeiten einfügt:

%Vor%

Registrieren Sie dann den IFilterProvider:

%Vor%

Ich habe diese Methode eingefügt und sie in der Klasse UnityWebApiActivator aufgerufen.

    
Randy Levy 02.10.2013, 08:26
quelle