2013-08-23 6 views
1

Люблю пример Caliburn.Micro HelloScreens, но я застрял с инъекцией зависимостей MEFs. Я бы предпочел использовать Ninject, поскольку я больше всего ему знаком. Прочтите несколько замечательных статей о размещении MEF в контейнере IOC (http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx)...but не может получить простой пример работы с caliburn.microCaliburn.Micro Пример HelloScreens - использование Ninject в качестве контейнера IOC

То, что я ищу, - это способ использования инжекции Ninject Constructor вместе с MEF. MEF для расширения управление. Ninject для инъекций конструктора зависимостей.

Я ищу рабочий Caliburn.Micro загрузчик, который включает в MEF и Ninject?

ответ

0

Я ищу рабочий Caliburn.Micro загрузчик, который включает в MEF и Ninject?

Я использую Caliburn.Micro в течение длительного времени, и я наткнулся на каждый образец в Интернете, который его использует, и такого образца нет.

Теперь я порекомендую другое дело, используя два контейнера в вашем приложении в то же время довольно сложно, как указано в статье.

Итак, если бы я был вами, я бы либо использовал MEF, который обрабатывает множество задач инъекции зависимостей, хотя это не контейнер DI, и, конечно, он поддерживает расширение.

С другой стороны, если вы действительно любите Ninject и используете его много, вы должны использовать функции Ninject, два, которые очень хороши для поддержки расширений или надстроек, которые являются расширениями соглашений или модулями Ninject, вы можете подробнее об этих двух функциях в этом stackoverflow question.

+0

Я отправил из отчаяния, потому что не мог понять, как зарегистрировать NHibernate ISessionFactory. Как всегда, после того, как я задаю вопрос, я добиваюсь прогресса. Как вы рекомендуете, я собираюсь использовать MEF DI и стать опытным в этом. – faldeland

+0

@faldeland Да, я бы рекомендовал, что MEF - это отличная инфраструктура Extensibility, но всегда помните, что это не полноценный контейнер DI, хотя Microsoft пообещала нажать в этом направлении. –

+0

@Sniffer: поскольку вы сказали, что у вас есть хороший опыт работы с Caliburn.Micro, вы знаете какой-либо пример WORKING, который показывает, как загружать Autofac с помощью CM.Micro? Потому что у меня [этот вопрос] (http://stackoverflow.com/questions/20056673/caliburn-micro-autofac-bootstrapping) – Sergio