Construtor / Setter Injection mit IoC in HttpHandler, ist das möglich?

Ich bin auf ein ziemlich haariges Problem gestoßen. Es gibt wahrscheinlich eine einfache Lösung dafür, aber ich kann sie nicht finden!

Ich habe einen benutzerdefinierten HttpHandler, mit dem ich eine Anfrage bearbeiten möchte, protokolliere bestimmte Informationen und gebe die Details in die Datenbank ein. Ich benutze NUnit und Castle Windsor.

So habe ich zwei Schnittstellen; eine für die Protokollierung der anderen für die Dateneingabe, die Konstruktor injiziert werden. Ich fand schnell heraus, dass es keine Möglichkeit gibt, den Konstruktor aufzurufen, da der standardmäßige parameterlose Konstruktor immer stattdessen aufgerufen wird.

So dachte ich, ich würde Setter-Injektion verwenden und Castle Windsor es regeln lassen. Das funktioniert eigentlich so als wenn ich @ benutcontainer.Resolve<CustomHttpHandler>(); Ich kann überprüfen, ob der Logger nicht null ist. (In Application_Start in Global.asax.cs)

Das Problem ist, obwohl Castle Windsor die Instanz erstellen kann, die die http-Anwendung nicht verwendet ??? Meiner Ansicht nach?

rundsätzlich bestand der Grund für diese Vorgehensweise darin, den Logger- und Daten-Repository-Code isoliert durch Verspotten und Testen von Einheiten testen zu könne

Wie kann ich dieses Problem lösen?

Vielen Dank

Antworten auf die Frage(4)

Ihre Antwort auf die Frage