Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 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 е много сложен процес, не знаем дали класът Controller има конструктор с параметри или какъв тип аргумент е конструкторът. За да използвате 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