Сделать Visual Studio не заботясь о версиях DLL

Есть ли способ заставить визуальную студию не заботиться о версиях dll? Это плохая идея?

Я перезагружаю свою машину dev, и я только что установил последнюю версию Pex и Moles (версия .92). Все мои проекты находятся на версии .91.

Мы находимся в середине выпуска и не хотим обновляться прямо сейчас. Кроме того, я не могу найти установщика для версии .91.

Когда я пытаюсь скомпилировать, я получаю сообщение о том, что мне не хватает ссылки. (Отсюда этот вопрос)

Ответ 1

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

Это было частью того, что было известно как " DLL Hell в дни pre -.NET... Если вам нужно было используйте сторонний компонент (Crystal Reports Viewer - это тот, с которым нам всегда приходилось сталкиваться), вы просто использовали бы ссылку на любую установленную версию на ПК пользователя. У наших торговых точек должна была быть определенная версия Crystal Reports для их отчетов о книгах, чтобы печатать правильно, и из-за этого нам приходилось держаться на старой версии навсегда. Обновление Crystal на ПК нарушило приложение для работы с клиентами. На моем первом ПК, у меня было несколько приложений, когда я устанавливал или обновлял другой. В частности, Real Player нарушил мое программное обеспечение для автоответчика. Гуфи-вещи вроде этого...

Итак, версия важна, даже если это раздражение. Это также, почему у меня есть предвзятость в отношении сторонних инструментов, для которых у меня нет кода, и не могу перекомпилировать себя.

Ответ 2

Если вы посмотрите на свойства ссылочной DLL, вы увидите свойство "Специфическая версия". Если вы установите значение false, оно не отслеживает конкретную версию файла проекта.

Чтобы это сработало, вам нужно как-то исправить ссылки там, где они используются. Вы можете сделать это, открыв каждое решение и зафиксировав ссылки (при этом вы также можете просто обновить ссылки на правильную версию, обращая внимание на комментарии Дэвида).

Если у вас много решений, вы можете использовать такой инструмент, как sed (см. этот пост для версий Windows, таких как Есть ли какая-либо утилита sed для cmd.exe), чтобы просто обновлять файлы проекта по мере необходимости.