2015-05-13 3 views
0

Я использую LightInject в качестве контейнера IoC для моего проекта библиотеки классов. Поскольку у этих типов проектов нет методов ввода или запуска, я могу написать код для регистрации зависимостей. Я хочу внедрить что-то авторегистрацию, поэтому любой клиент, который потребляет мою библиотеку, и который имеет на ней зависимости, должен получить автоматическое разрешение без клика, явно вызывающего метод регистрации.Автоматическая регистрация зависимостей с LightInject

Также LightInject должен быть абстрагирован от клиента. Он никогда не должен знать, как объекты создаются/уничтожаются внутри библиотеки классов.

ответ

0

Внедрите интерфейс ICompositionRoot, и метод Compose будет выполнен в первый раз, когда запрашивается «неизвестная» услуга. Другой подход - разместить регистрацию в статическом конструкторе где-нибудь.

Смежные вопросы