Я реализовал Unity в моем проекте Asp.Net MVC2. В настоящее время я регистрирую свои типы BLL при запуске приложения.Использование единства для разделения уровня бизнес-логики с уровня доступа к данным
Затем я создал класс под названием UnityControllerFactory, который отвечает за разрешение моих зависимостей внутри моих контроллеров. Я просто использую Property injection, чтобы выполнить это, используя атрибут зависимости.
Следующая мысль заключается в том, чтобы удалить мои зависимости, которые содержатся в моих классах BLL, которые привязаны к конкретной реализации классов слоя DAL. Я также хотел бы иметь возможность сделать это через инъекцию свойств вместо инъекции конструктора, поскольку я ссылаюсь на несколько классов в моих методах класса Bll.
Я надеялся на какое-то руководство по любым решениям, которые решали эту проблему или это полностью переборщило?
Я считаю, что это последнее, что я, возможно, сделал классы Business Logic Layer слишком подробными. Я собираюсь пересмотреть классы Business Logic Layer, чтобы инкапсулировать некоторые из связанных функций Business Entities. Проблема в том, что моя модель домена велика вместе с множеством несвязанных объектов. Мне все еще любопытно, есть ли хорошие статьи с некоторыми указаниями о том, как создать контейнер, который будет использоваться через разные уровни вашего приложения? – JustinMichaels
После того, как вы посоветовали реорганизовать классы Business Logic Layer для группировки функциональности. Я упростил свои зависимости и реализовал конструктор для каждого из моих контроллеров и классов BLL, у которых есть свои зависимости, введенные Unity. Я очень ценю помощь и руководство. – JustinMichaels
Я рад, что смог помочь, особенно если это помогло вам прийти к более простому решению. – ckramer