Как я могу обновить сразу несколько проектов (одно и то же решение), нацеленных на 3.5 - 4.0? - PullRequest
8 голосов
/ 02 апреля 2011

В одном большом решении у нас есть около 100 проектов, нацеленных на 3.5 и в настоящее время VS.NET 2010.

Теперь мы хотим обновить его до .NET 4.0. Нужно ли переходить один за другим и менять цель? или есть ли способ автоматизировать этот процесс?

Ответы [ 5 ]

9 голосов
/ 30 июля 2013

Расширение Target Framework Migrator прекрасно работает.

После установки просто перейдите на Tools -> Target Framework Migrator

6 голосов
/ 02 апреля 2011

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

Сначала я обновляю один проект и проверяю результат, затем я ищу и заменяю соответствующие детали в моих файлах .csproj.

2 голосов
/ 02 апреля 2011

Да.Вам придется изменить каждый из них для использования .Net 4.0.

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

Просто заметьте, что вам не нужно этого делать.Есть обратная совместимость .. проекты, скомпилированные для работы с .Net 3.5, будут работать с .Net 4.0

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

Кроме того, вам не нужно менять каркас, пока вы действительно не захотите использовать что-то из нового каркаса.

1 голос
/ 26 октября 2011

Я не уверен в переходе с 3.5 на 4.0, но если вы обновляетесь с 2.0 на 4.0, вы увидите, что VS2010 фактически добавил файл app.config по умолчанию (если у вас не было own), что означает, что вам также придется скопировать этот файл в каждый из проектов. Кроме того, в случае, если у вас есть файлы * .designer, они также могут измениться, поэтому вам придется соответственно обновить ...

Подводя итог, вот процедура:

  1. Обновите один проект и внесите изменения во все файлы (я считаю, что для этого лучше всего использовать систему контроля версий)
  2. написать скрипт / инструмент, который перечисляет все решение и ... а. Копирует app.config в каждую из папок проекта б. Изменяет файлы *. * Proj в соответствии с diff для стр.1 с. При необходимости изменяет остальные файлы
0 голосов
/ 02 апреля 2011

Я должен был сделать нечто подобное, когда мы перешли с 2.0 на 3.5 + VS2008.Я использовал awk (на самом деле gawk).Я смог выполнить миграцию без необходимости замораживать другие проверки разработчиков во время конвертации.

awk позволил мне указать серию шаблонов RegEx для поиска в каждом файле и выполнения «действия».Встроенные поддерживаемые функции были на одном уровне с тем, к чему я привык с vbscript.

Я получил отсюда - http://unxutils.sourceforge.net/

Я нашел эту статью полезной для изучения- http://www.cs.utah.edu/dept/old/texinfo/gawk/gawk_toc.html

...