Verwenden von ninject dependencyResolver für MVC und WebAPI

8

Ich habe erstellt und MVC 4 Web-Anwendung und entschieden, Web-API in dieser App zu verwenden. Ich verwende NINject Abhängigkeit Resolver für MVC Web App. und jetzt möchte ich diese ninject Abhängigkeit Resolver für Web API verwenden. aber das Problem raise hier mvc IDependencyResolver Namespace ist: using System.Web.Mvc und web api IDependencyResolver ist using System.Web.Http.Dependencies

Wie kann ich dieses Problem lösen?

Ich möchte endlich so etwas:

%Vor%     
Hashem Aboonajmi 16.01.2014, 09:46
quelle

2 Antworten

13

Es gibt eine Möglichkeit, denselben Container zwischen MVC und ASP.NET Web API zu teilen. Sie müssen nur beide Schnittstellen implementieren.

%Vor%

Überprüfen Sie diesen Artikel zur Lösung: Einfache Möglichkeit, Dependency Resolvers zwischen MVC und Web API zu teilen

    
Nenad Hummingbird 10.07.2014, 11:42
quelle
3

Es gibt ein NuGet-Paket, das dies tut. Fügen Sie Ihrem Projekt die NuGet-Pakete "NInject", "NInject.Web.Common", "NInject.MVCx" und "WebApiContrib.IoC.Ninject" hinzu. Eine NInjectWebCommon-Klasse sollte im App_Start-Ordner erstellt worden sein. Fügen Sie Ihre Bindung für Ihre Abhängigkeiten der RegisterServices-Methode hinzu. Fügen Sie in der CreateKernel-Methode nach dem Aufruf von RegisterServices (Kernel) die folgende Zeile hinzu:

%Vor%

Damit können Sie den Ninject-Abhängigkeitsresolver erstellen, ohne eine eigene Überschreibungsklasse erstellen zu müssen. Einfach, oder?

    
bougiefever 23.11.2016 19:16
quelle