Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 14932|Відповідь: 0

[ASP.NET] asp.net MVC використовує ninject для реалізації ін'єкції залежності IOC

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



Створіть інтерфейс:



Потім реалізувати цей інтерфейс:



Ми створюємо папку під назвою Infrastructure під проєктом WebUI, додаємо до неї заводський клас NinjectControllerFactory, код виглядає так:



ninjectKernel.Get(controllerType) у наведеному вище коді може отримати екземпляр контролера. Якщо ручне створення класу Controller дуже складний процес, ми не знаємо, чи має клас Controller конструктор з параметрами, або який тип аргументу є конструктором. Щоб користуватися Ninject, достатньо одного з наведених вище методів Get, і Ninject автоматично оброблятиме всі залежності внутрішньо та інтелектуально створює потрібні нам об'єкти.

Після створення класу Controller Factory потрібно наказати MVC використовувати наш клас NinjectControllerFactory для створення об'єкта Controller, для цього потрібно додати наступний код до методу Application_Start файлу Global.asax:




Ми створюємо новий клас під назвою ControllerBase у папці контролерів, і код виглядає так:



Потім ми модифікуємо контролер, щоб інтегрувати клас ControllerBase, гаразд, готово!






Попередній:c# Обчислити значення SHA256 файлу
Наступний:Встановити VSFTP-організацію процесів
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com