Как добиться обратной совместимости с моей архитектурой плагинов .NET - PullRequest
1 голос
/ 01 июля 2010

Справочная информация: Я занимаюсь разработкой приложения ASP.NET с подключаемым модулем на стороне сервера. Я определяю набор интерфейсов в сборке плагина .Interfaces .NET.

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

Плагины будут ссылаться на сборку интерфейсов плагинов.

Проблема: В будущем я могу обновить мою сборку pluginInterfaces новыми функциональными возможностями, но она будет остаются на 100% обратно совместимыми (т.е. интерфейсы не будут изменены). Однако сборка pluginInterfaces будет иметь новый номер версии сборки.

Я хочу, чтобы сборки сторонних плагинов просто продолжали работать. Но они больше не найдут сборку pluginInterfaces, против которой они были построены. Сборка pluginInterfaces будет иметь строгое имя, и поэтому плагины будут искать версия с точно совпадающей версией сборки.

Вопрос: Каков наилучший способ достичь этого? Это то, для чего «Политика издателя»?

1 Ответ

2 голосов
/ 01 июля 2010

Вы можете попробовать перенаправление привязки .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...