Я бы хотел использовать Castle Windsor для внедрения зависимостей для моего решения, состоящего из следующих проектов:
- Mvc [Веб-приложение ASP.NET MVC 3]: уровень представления (зависит от Бизнес и Модели )
- Бизнес [Библиотека классов]: бизнес-уровень (зависит от DataAccess и Модели )
- DataAccess [Библиотека классов]: уровень доступа к данным (зависит от Модели )
- Модели [Библиотека классов]: слой модели
На бизнес-уровне есть класс PostService
, реализующий IPostService
, который управляет сообщениями в блоге. PostsController
проекта Mvc зависит от IPostService
. Однако PostService
(соответствующая конкретная реализация) сама зависит от IPostRepository
.
Где я могу настроить Castle Windsor, чтобы он возвращал экземпляр PostRepository
для разрешения IPostRepository
? Проект Mvc не знает о проекте DataAccess . Таким образом, я не могу настроить привязки компонентов в global.asax или где-то еще в Mvc .
[Обновить] Диаграмма зависимостей
Теперь, когда я нашел решение (еще раз спасибо, Дарин Димитров!), Я хотел бы поделиться с вами текущей диаграммой зависимостей.