Я разрабатываю расширяемое приложение с MEF. Приложение будет иметь множество типов плагинов для сбора и обработки данных по-разному.Стратегии обновления плагина MEF для winforms
Я думаю о создании онлайн-репозитория с версиями для плагинов, который позволит пользователю загружать новые версии плагинов, когда они станут доступными.
Было бы хорошо, если бы MEF может загрузить различные версии одного и того же плагина одновременно, хотя от того, что я понимаю, что это не возможно (поправьте меня, если я ошибаюсь)
Так что я смирился что мне нужно будет обновить плагин и архивировать предыдущую версию.
Что было бы лучшей стратегией для этого?
Пример 1
Применение загружает новую версию загруженного под управлением модуля. Я не могу разместить плагин в каталоге плагинов, так как есть уже DLL с тем же именем. Так что я могу переименовать новый плагин с версией Suffix. Я не могу загрузить одну и ту же сборку, поэтому я думаю, что ей нужно принудительно перезапустить. перезапуск, он достигает старого плагина и загружает новый.
--- Это кажется решения, кажется, немного грязный
Пример 2
Применение загружает новую версию загруженного под управлением модуля. Плагин помещен в определенный тип установщика. Программа установки закрывает хост изящно и архивирует существующий плагин. Установщик устанавливает новый плагин и перезапускает приложение-хост.
--- это также, кажется, немного грязный
если у кого есть какие-либо поправки к моим предположениям или подстрекать к успешной стратегии в моей достичь своей цели, идентификатор быть один счастливый разработчик
Благодаря
Спасибо за подробные ответы и ссылки, очень интересные, полные оценки :) –