Автоматическая интеграция в Prism 4 - PullRequest
1 голос
/ 24 июня 2011

Я заменяю стандартный контейнер Unity в Prism 4 и сталкиваюсь с проблемой, когда мои модули инициализируются.Раньше я использовал инъекцию IUnityContainer, и это позволило мне хорошо и хорошо регистрировать дополнительные типы из моего модуля.

Теперь я внедряю AutoFac.IContainer, и у него нет необходимых мне методов RegisterType.Они расположены в классе ContainerBuilder.

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

Спасибо, Крейг

1 Ответ

4 голосов
/ 24 июня 2011

Стандартный способ Autofac - это сборка ваших модулей в виде IModule классов, использование builder.RegisterModule для загрузки их в ваш контейнер как часть процесса регистрации.

Если у вас уже есть контейнер и вам нужно добавить в него регистрации, вы снова используете ContainerBuilder, например:

var cb = new ContainerBuilder();
cb.Register(...);
...

cb.Update(existingContainer);
...