Я пытаюсь добавить WebAPI в существующий проект ASP.Net MVC, и мой вопрос касается единства:Как использовать Unity MVC & Unity WebAPI в том же проекте ASP.Net MVC
Перед с UnityMVC в одиночку , проект был в папке App_Start, класс UnityConfig со следующим кодом:
container.RegisterType<IUnitOfWork, UnitOfWork>(new PerRequestLifetimeManager());
container.RegisterType<IDataContext, tfe_schemaContext>(new PerRequestLifetimeManager());
container.RegisterType<IPrintJobService, PrintJobService>(new PerRequestLifetimeManager());
container.RegisterType<IRepository<print_job>, Repository<print_job>>(new PerRequestLifetimeManager());
Чтобы использовать WebAPI, я добавил UnityWebAPI через NuGet и это действие добавлен класс UnityMvcActivator в папке App_Start.
Следующая ошибка отображается, когда я выполнить проект: «Тип Unity.WebApi.UnityDependencyResolver не появляется для реализации Microsoft.Practices.ServiceLocation.IServiceLocator имени параметров:. CommonServiceLocator».
Я нашел разные примеры кода, используя класс Bootstrapper, но без использования класса UnityConfig или UnityMvcActivator.
В классе Bootrstrapper, регистрация типов, как это:
container.RegisterType<IProductServices, ProductServices>().RegisterType<UnitOfWork>(new HierarchicalLifetimeManager());
Я немного потерял со всем этим, пожалуйста, помогите мне понять и исправить эту ошибку.
Может предоставить небольшое руководство по их использованию: https://www.devtrends.co.uk/blog/using-unity.mvc5-and-unity.webapi-together-in-a-project –