Я поддерживаю внутреннее расширение Visual Studio компании, которое упаковано и развернуто как контейнер VSIX. Это расширение в настоящее время предназначено для VS 2010. Он использует несколько VS API DLL и ссылается на версии VS 2010 из них.
В настоящее время я переношу это расширение для совместимости с VS 2012/2013. Я уже выяснил, что старый манифест VSIX можно отредактировать вручную, чтобы расширение было дополнительно установлено на VS 2012/2013 - это работает отлично.
Однако некоторые из API-интерфейсов VS 2010, которые я использую в настоящее время, несовместимы с VS 2012 ++, и мне нужно их обновить - в результате отказа от обратной совместимости.
Мой вопрос: как мне структурировать мое решение и VSIX, чтобы он был совместим с VS 2010, 2012 и 2013 годами. Будет ли он работать с одним DLL-таргетингом VS 2010 и одним таргетингом DLL на VS 2012/2013? и выбрать тот, который будет использоваться при продолжительном времени загрузки?
Боковое примечание. Я использую MEF для создания своих внутренних функциональных блоков. Способствует ли это каким-либо образом?