W MVC po prostu utworzę klasę NinjectControllerFactory
, która implementuje interfejs DefaultControllerFactory
, a następnie wykonuję niektóre wiązania. wreszcie w Global
go uruchomić:Jak korzystać z programu Ninject z interfejsem ASP.NET Web API?
ControllerBuilder.Current.SetControllerFactory(new NinjectControllerFactory());
Ale co z użyciem Ninject w ASP.NET Web API? jest trochę informacji w Internecie, ale są przestarzałe i dla wersji wcześniej wydanych.
Czy istnieje prosty sposób na ten problem?
Wygląda na to, że to aktualizacja na dwóch różnych pakietów Nuget: [Ninject.Web.WebApi] (http://nuget.org/packages/Ninject .Web.WebApi/3.0.0.2) i [Ninject.Web.WebApi.Updated] (http://nuget.org/packages/Ninject.Web.WebApi.Updated/). Wygląda na to, że pierwszy jest jeszcze w wersji przedpremierowej. –
Rozwiązanie z artykułu peterprovost wydaje się przerwać powiązania InSingletonScope, zasadniczo tworząc wszystko na żądanie http. "Oficjalna" obsługa webapi w dziewictwie zdaje się być nigdzie bliska produkcji, więc przejdzie na Auotfac, które wydają się wspierać WebApi (i nie tylko): https://code.google.com/p/autofac/wiki/ WebApiIntegration – Dmitry
Próbowałem pierwsze podejście, działa pięknie. – liang