Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 20328|Ответ: 0

[WebAPI] В MVC5 и webAPI используется инъекция зависимостей Autofac

[Скопировать ссылку]
Опубликовано 29.11.2017 14:35:33 | | | |
Во многих книгах упоминаются такие понятия, как инжекция зависимостей и инверсия управления, все из которых направлены на достижение слабо связанных уровней, компонентов и целей классов.

Обычно класс репозитория используется для разделения прямого соединения между Контроллером и Моделью. Чтобы отключить тесное соединение между классом Репозитория и Контроллером, оно обычно не определяется и не инстанцируется прямо классом Репозитория, а внедряется в указанный Репозиторий с помощью метода построения Контроллера.



Популярные контейнеры IoC: Ninject, Autofac, Unity.

Вот краткое объяснение того, как использовать Autofac Injection MVC5 и Webapi2.

1. Используйте nupkg для ссылки на Autofac, Autofac.Mvc5 и Autofac.Webapi2

PM> install-package autofac -версия 3.5.0

PM> install-package autofac.mvc5

PM> install-package autofac.webapi2 (Примечание: если вы используете webapi2 в своём проекте, здесь должен быть webapi2, а не webapi, иначе в процессе выполнения появится «Rewrite member Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()») нарушил правила наследства. Безопасность доступности переопределённого метода должна соответствовать защищённой доступности переписанного метода. Неправильно. )



2. Зарегистрировать компонент.

3. Создайте контейнер для последующего использования.

var контейнер=конструктор. Build();
4. Создайте пожизненный диапазон из контейнера.

5. Используйте этот Lifetime Scope для разбора экземпляров компонентов.

Конфигурация. DependencyResolver = новый AutofacWebApiDependencyResolver(container); Для регистрации контейнера API необходимо использовать объект HttpConfiguration
DependencyResolver.SetResolver (новый AutofacDependencyResolver(container)); Зарегистрировать контейнер MVC
6. В методе Register класса WebApiConfig вызовите вышеуказанный шаговый код и передайте объект HttpConfiguration.



Преимущество автофака в том, что его можно разъединить за один момент без необходимости в конфигурации; autofac лучше реализует концепцию «конвенция выше конфигурации» в MVC.





Предыдущий:asp.net MVC добавляет контроллер WebAPI
Следующий:Как перезарядиться.
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com