У меня есть решение с веб-проектом MVC, проектом инфраструктуры, проектом служб и проектом данных.Я установил ninject от NuGet в Visual Studio.Он создал папку в моем веб-проекте под названием «App_Start» и поместил туда файл кода Ninject, и мое приложение работает совершенно нормально.
Моя проблема заключается в том, что мне нужно разрешить зависимость вне веб-проекта, котораяэто свойство или в конструкторе.
Я пробовал это в одном из моих классов в моем проекте служб:
var m_customerService = DependencyResolver.Current.GetService(typeof(ICustomerService));
Это возвращает ноль каждый раз.Когда я пытаюсь сделать то же самое в моем HomeController, например, он возвращает именно то, что я ожидаю.
Я подозреваю, что это как-то связано с тем, как проекты ссылаются друг на друга.Мой веб-проект, очевидно, ссылается на все другие проекты.Я думал о переносе кода запуска Ninject в свой проект инфраструктуры, чтобы я мог получить к нему доступ где угодно.Имеет ли это смысл делать?У кого-нибудь еще была эта проблема, или я что-то упускаю?
Любая помощь по этому вопросу была бы потрясающей.Спасибо.