Регистрация перехватчиков после регистрации компонентов в замке - PullRequest
2 голосов
/ 29 ноября 2011

У меня есть средство, которое должно зарегистрировать перехватчик, а затем зарегистрировать этот перехватчик подмножество компонентов, уже зарегистрированных в контейнере Castle Kernel.

Объект находится в отдельном узле, и его предполагается использовать из разных сборки, поэтому я не могу связать регистрацию перехватчика с регистрацией компонента каждой сборки, которая использует это средство.

Возможно ли это сделать? Как я могу достичь этой функциональности?

1 Ответ

1 голос
/ 30 ноября 2011

Обычно я использую средства обслуживания следующим образом:

// 1. create the container
var container = new WindsorContainer();

// 2. add all the facilities I need
container.AddFacility<SomeFacility>();
contianer.AddFacility<SomeOtherFacility>();

// 3. install all the components
container.Install(FromAssembly.This());

Средства обычно либо подписываются на события контейнера , регистрируют некоторые из своих собственных компонентов, либо добавляют ComponentModel конструкторов , которые проверяют и увеличивают ComponentModel регистрируемых компонентов.

Таким образом, он может быть полностью прозрачным для компонентов и накладывать явную связь между компонентами и средствами (если вы этого не хотите).

...