Ninject

час перебираю большой кусок кода в Castle Trunk, который включает новый свободный интерфейс для настройки контейнера. Поскольку в проекте имеется огромный xml-файл windsorConfig, который не поддается обслуживанию, я подумал, что начну использовать эту новую функцию. Я знаю, что другие контейнеры (например, StructureMap 2.0) также содержат свободные интерфейсы для конфигурации контейнеров, поэтому этот вопрос не основан на Виндзоре.

Мой вопрос заключается в том, какие условные обозначения / идиомы / шаблоны вы используете для конфигурации контейнера с использованием новых свободно распространяемых стилей интерфейсов?

Моей первой мыслью было создать где-то статический метод (например, ContainerConfig.Config), который бы загружал все соответствующие типы, которые приложение использует в контейнер. Меня беспокоит то, что в конечном итоге эта монолитная функция окажется почти такой же неуправляемой, как файл конфигурации xml (за вычетом налога на угловые скобки).

Моя вторая мысль состояла в том, чтобы разбить ее так, чтобы каждая зависимая сборка по соглашению экспортировала свою конфигурацию по умолчанию. Я вижу, что это было полезно для иерархий, используемых внутри сборки. Но для типов, используемых внешне, должна ли конфигурация быть определена внутренне?

Чем больше я об этом думал, тем больше вопросов мне казалось. Что ты об этом думаешь?

Ответы на вопрос(4)

Ваш ответ на вопрос