Я создал веб-приложение MVC 4 и решил использовать web api в этом приложении. Я использую преобразователь зависимости ninject для веб-приложения MVC. и теперь я хочу использовать этот преобразователь зависимости ninject для web api. но проблема рейза здесь MVC IDependencyResolver пространства имен: using System.Web.Mvc
и веб-апи IDependencyResolver является using System.Web.Http.Dependencies
Использование ninject dependecyResolver для MVC и WebAPI
так, как я могу решить эту проблему?
, наконец, я хочу что-то вроде этого:
// Use the container and the NinjectDependencyResolver as
// application's resolver
var resolver = new NinjectDependencyResolver(container);
//Register Resolver for MVC
DependencyResolver.SetResolver(resolver);
//Register Resolver for Web Api
GlobalConfiguration.Configuration.DependencyResolver = resolver;
Преобразователь зависимостей Web API - это совершенно другой интерфейс, чем преобразователь зависимостей для MVC. Вам нужно будет создать другой класс для веб-API. – Steven
Я думаю, что должен быть путь, pattrn. некоторые вещи как адаптер. потому что у них есть некоторый общий метод в их интерфейсе! –
Решение прост, создайте класс, который реализует интерфейс 'System.Web.Mvc.IDependencyResolver' и' System.Web.Http.IDependencyResolver'. – Steven