Я всегда использовал средства для регистрации своих компонентов, но заметил IWindsorInstaller.
Оба они похожи на меня, и я хотел бы знать, какая разница между ними и какой из них следует использовать где.
Я всегда использовал средства для регистрации своих компонентов, но заметил IWindsorInstaller.
Оба они похожи на меня, и я хотел бы знать, какая разница между ними и какой из них следует использовать где.
Dan,
разница заключается в следующем:
Configuration
или FromAssembly
, которые можно использовать для использования файла конфигурации или для автоматического обнаружения ваших установщиков и запуска их всех за один раз, потому что в большинстве приложений у вас будет несколько из них.
Средства TypedFactoryFacility
, который добавляет возможность автоматического создания заводов для прозрачного вытягивания компонентов из контейнера. У вас есть StartableFacility
, который позволяет запускать/останавливать компоненты без необходимости явно беспокоиться об этом. У вас также есть возможности интеграции для таких вещей, как NHibernate или WCF, или Monorail или ASP.NET MVC, которые заставляют Windsor знать о некоторых аспектах других фреймворков, с которыми он работает, чтобы ваша работа была проще. С точки зрения возможностей объекты могут иметь собственную конфигурацию. Также нет помощников для добавления дополнительных функций, так как в большинстве приложений вам потребуется всего несколько.Оба из них могут регистрировать материал, но основное различие заключается в том, что установщики регистрируют все ваши приложения (включая добавочные средства). Услуги, с другой стороны, регистрируют то, что им нужно, чтобы выполнять свою работу.
Это обычно означает, что объекты регистрируют расширения в контейнере, такие как пользовательские резольверы, вкладчики компонентов или перехватчики ComponentModel - вещи, которые по определению знают о контейнере.
Установщики регистрируют компоненты уровня приложения, которые лучше всего не знают о контейнере.
Надеюсь, что делает различие более ясным.