Frage

Ich versuche, die Strukturmap-Ver 3.0.5.0 mit der Web-API 2 einzurichten.

Ich habe diese Implementierung gefolgt: Konfigurieren der Abhängigkeitseinspritzungmit ASP.NET-Web-API 2.1

Ich bekomme diesen Fehler, wenn Sie einen Anschlag gegen meinen KomplexeRescontroller machen:

Ein Fehler ist aufgetreten, wenn er versucht, einen Controller von Typ 'ComplexEScontroller' zu erstellen.Stellen Sie sicher, dass der Controller einen parameterlosen öffentlichen Konstruktor hat.

Kann jemand sehen, was mit meiner structuremap config falsch ist?Die Erstellenmethode wird nie aufgerufen.

Dies ist meine Implementierung:

generasacodicetagpre.

Diese Methode ist in meinem Startup ...

generasacodicetagpre.

.. und das ist der Controller:

generasacodicetagpre.

meine vollständige Startup-Klasse

generasacodicetagpre.

War es hilfreich?

Lösung

Das Problem hier ist, dass Sie Ihren Service-Aktivator mit einem GlobalConfiguration-Objekt sowie nicht mit Ihrem HTTP-Konfigurationsobjekt registrieren.In diesem Szenario wird das GlobalConfiguration-Objekt niemals verwendet, da er durch das HTTP-Konfigurationsobjekt ersetzt wird.Um Ihr Problem zu lösen, sollten Sie Ihre InitialIndecontainer () -Methode mit den folgenden ersetzen.

generasacodicetagpre.

Sie sollten dann das HTTP-Konfigurationsobjekt von Ihrer Startup-Klasse an die neue InitialIndecontainer () -Methode übergeben.

hoffe das hilft.

-b

Andere Tipps

Ich versuche, ein solides Verständnis des gesamten Lebenszyklus zu gewinnen.Ich denke, mein Setup kann bis zu den oben genannten etwas anders sein.Hier funktionierte das für mich.

generasacodicetagpre.

es hat gearbeitet, nachdem ich diese Zeile hinzugefügt habe:

generasacodicetagpre.

Sie müssen davon abrufen, dass mein VAR-Container von einer statischen Klasse namens IOCCONFIG mit einer statischen Setup-Methode bezeichnet wird.Hier werden die Schnittstellen ihren konkreten Implementierungen zugeordnet.

Sie können auch die GlobalExceptionLogger-Zeile ignorieren, wenn Sie mein komplettes Beispiel verwenden möchten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top