Как достигнуть назад совместимости с моей архитектурой плагина.NET

Фон: Я разрабатываю приложение ASP.NET со стороной сервера, включают архитектуру. Я определяю ряд интерфейсов в pluginInterfaces блоке.NET.

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

Плагины сошлются на сменный блок интерфейсов.

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

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

Вопрос: Что лучший способ состоит в том, чтобы достигнуть этого? Это то, для чего 'политика Издателя'?

1
задан GarethOwen 1 July 2010 в 14:05
поделиться