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

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

[ASP.NET] asp.net MVC использует ninject для реализации инъекции зависимости IOC

[Скопировать ссылку]
Опубликовано 14.10.2016 16:46:57 | | |
Сначала установите фреймворк Ninject со следующей командой Nuget:



Создайте интерфейс:



Затем реализовать этот интерфейс:



Мы создаём папку под названием Infrastructure в рамках проекта WebUI, добавляем к ней заводской класс NinjectControllerFactory, код выглядит следующим образом:



ninjectKernel.Get(controllerType) в приведённом выше коде может получить экземпляр контроллера. Если ручное создание класса контроллера — очень сложный процесс, мы не знаем, есть ли у класса контроллер конструктор с параметрами или какой тип аргумента является конструктор. Чтобы использовать Ninject, достаточно использовать один из вышеуказанных методов Get, и Ninject автоматически обрабатывает все зависимости внутри себя и интеллектуально создаст нужные объекты.

После создания класса Controller Factory нам нужно сказать MVC использовать наш класс NinjectControllerFactory для создания объекта Controller, для этого нужно добавить следующий код в метод Application_Start файла Global.asax:




Мы создаём новый класс под названием ControllerBase в папке controller, и код выглядит следующим образом:



Затем модифицируем контроллер для интеграции класса ControllerBase — хорошо, готово!






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

Mail To:help@itsvse.com