Я написал расширение VS2012 для внутреннего использования, которое упрощает процесс публикации и обновления любых пакетов nuget из nuspec, которые содержатся в текущем загруженном решении.Управление зависимостью одного расширения VS от другого
Я ссылается Nuget.Core из официального источника пакета, чтобы сделать это, добавил зависимость уровня расширения на официальное продлении NuGet, а затем отмечен мою местную ссылка на сборку Nuget.Core не быть включен в VSIX.
Все было в порядке до вчерашнего дня, когда обновлялся nuget - теперь мое расширение вообще не работает, поскольку оно не может загрузить более старую версию этой основной сборки (номер версии всегда изменяется).
Я только что попробовал получить новую версию от nuget, но она еще не выпущена.
Так я столкнулся с несколькими вариантов: снова
- Отпустить расширение, с привязкой переадресовать к новой версии
- Ссылки DLL из установленного места расширения NuGet
Но ни один из них не кажется идеальным, поскольку я не хочу, чтобы продолжать восстановление и выпуск моего пакета всякий раз, когда обновляется nuget! В равной степени я не хочу разворачивать свою копию сборки с расширением, так как это может остановить работу основного расширения nuget.
У кого-нибудь есть другие варианты для меня?
Проблема возникает при обновлении другого расширения, таким образом, развертывание более новой версии DLL, от которой зависит мой код (в решающей степени, с другой версией сборки). Затем это прерывает расширение, потому что оно было построено против более низкой версии - выброса ошибки загрузки .Net. Я не могу ограничить мою команду не обновлять Nuget всякий раз, когда он появляется. - но в равной степени я не могу распространять основную DLL, потому что он будет разорвать расширение Nuget при их обновлении. –
Не может ли компьютер одновременно хранить несколько версий любой библиотеки? Затем вы можете явно указать точную версию, которая вам нужна. –