Приложение, которое я унаследовал, использует свободный интерфейс для настройки нашего контейнера Windsor, и эта огромная конфигурация довольно отвратительна.
В прошлом я создавал контейнер метода расширения. AddModule, а затем создавал модули, которые передавались в контейнер и регистрировали сервисы в виде StructureMap для различных «модулей» моей системы, которые требуют настройки.
container.AddModule(new FooModule());
...
public class FooModule : IWindsorModule
{
public Register(IWindsorContainer container)
{
container.Register(/*Windsor's Ridiculous Fluent Syntax*/);
}
}
Это что, в Виндзоре? Являются ли они аналогами модулей StructureMap или они являются точками расширения для добавления супермагии в Виндзор?
Каков наилучший способ сделать конфигурацию вашего контейнера более модульной и менее безумной?