MEF и Autofac в приложении Silverlight 4 - PullRequest
2 голосов
/ 24 марта 2011

Только что начал работать над составным приложением, которое будет многоцелевым WPF и Silverlight 4. Вполне вероятно, что мы разрешим некоторые сторонние плагины. Кроме того, мы хотели бы разбить приложение Silverlight на несколько XAP, которые можно независимо загружать / загружать.

Мы думали, что использование MEF для управления точками расширения (т. Е. Составом модулей) приложения и Autofac для обработки зависимостей внутри модулей будет правильным решением.

Но вот в чем дело. Похоже, что Autofac не имеет интеграции SL4 MEF, поэтому мы не можем просто регистрировать типы из каталогов в коде Silverlight. Поскольку мы используем XAP для разделения приложения, нам нужно использовать MEF DeploymentCatalog, чтобы загружать новые XAP по мере их загрузки. Мы рассмотрели простую регистрацию типов в Autofac (в основном это view & viewmodels) по сборке, но, похоже, нет способа добраться до сборок через DeploymentCatalog. Мы что-то упустили? Есть ли способ получить сборки в DeploymentCatalog после его загрузки? Мы смотрим на это неправильно?

Не стесняйтесь спрашивать более подробную информацию, если этого недостаточно. Любая помощь всегда ценится.

Приветствия

Steve

Ответы [ 2 ]

1 голос
/ 25 марта 2011

Если вы столкнетесь с трениями здесь, я бы сказал, что вам лучше всего использовать MEF или Autofac на 100%.

Интеграция между ними хорошо работает для простых подключаемых сценариев, ноФункции MEF, привлекательные в Silverlight, основаны на возможностях MEF «загораться», которые не поддерживаются Autofac.

Надеюсь, это поможет,

Ник

0 голосов
/ 25 марта 2011

Как насчет не типов регистрации в Autofac? Я думаю, что, очень похоже на подход Resolve Anything , вы могли бы создать источник регистрации, который будет передавать запросы на разрешение в «внутренний» каталог развертывания.

...