2009-12-02 2 views
2

Я использую Prism и контейнер единства IoC, который поставляется вместе с Prism. Тем не менее, я бы хотел использовать другой контейнер IoC, если это выполнимо. Так; это? Предпочтительно я хотел бы использовать StructureMap. Обратите внимание: я еще не знаком с StructureMap, но на основе нескольких рекомендаций, которые я хотел бы попробовать.Использование StructureMap для настройки призмы

Вопрос в том, насколько жестко Призма связана с контейнером Unity. Существует UnityBootstrapper, который поставляется с контейнером IoC, уже настроенным с помощью материала Prism, такого как EventAggregator. Но есть ли аналогичный Bootstrapper в StructureMap, который я могу использовать, - настраивая в нем необходимые классы Prism?

Это что-то, что можно было бы порекомендовать, или я лучше придерживаюсь Единства? Каковы недостатки и недостатки?

ответ

2

Это определенно выполнимо. Вам нужно сделать 2 вещи, по существу:

  1. Создайте новый загрузчик (StructureMapBootstrapper).
  2. Создайте реализацию IContainerFacade, которая использует StructureMap.

На самом деле не существует каких-либо уникальных особенностей Unity. Он предназначен для замены. Ниже приведен пример замены Ninject: http://code.google.com/p/ninject-contrib/source/browse/trunk/CompositeWpf/NinjectContrib.CompositeWpf/

Это должна быть хорошая модель для вашей замены.

+0

Спасибо! Посмотрите образцы Ninject. – stiank81

Смежные вопросы