Каков наилучший способ загрузки расширений MEF в зависимости от местоположения решения? - PullRequest
0 голосов
/ 19 марта 2012

У нас есть расширение, которое вызывает инструменты командной строки и библиотеки DLL, которые постоянно обновляются и развертываются через систему контроля версий.Пользователи часто работают в разных ветках, каждая ветка может иметь различия в этих интерфейсах командной строки.

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

Вместо этого я хочу, чтобы пользователи просто синхронизировались с перфоманса, и открытие решения автоматически загрузит соответствующий vsix.

Я мог бы создать расширение прокси-сервера, которое обернет все необходимые мне функции, а затем динамически загрузить сборку, содержащую мою реализацию, и вызвать ее из прокси-сервера.Но в MEF существует так много точек входа для создания расширений, что мне нужно обновлять прокси так же часто, как я добавляю функции в наше расширение.

Возможно, есть способ динамически загрузить сборку, содержащую расширения MEF.

1 Ответ

2 голосов
/ 23 мая 2012

У меня есть запись в блоге, в которой подробно описано, как автоматически обновлять файл vsix, если версия была обновлена:

http://blog.ninlabs.com/2011/04/auto-update-visual-studio-extensions/

Возможно, вы сможете адаптировать его для проверки относительного пути к файлу, в котором хранится vsix, на основе пути решения.

...