У меня есть решение в Visual Studio 2012 с 170 C# проектами в нем. Мне нужно перенастроить все проекты с .NET Framework 4.0 до 4.5.2.Retargeting Все проекты в решении .NET 4.5.2
Я предпочитаю, чтобы Visual Studio справилась с этим, перейдя в свойства каждого проекта, изменив целевую структуру и давая Visual Studio внести необходимые изменения в файлы .csproj.
Я заметил, что эти изменения включают добавление нескольких новых тегов XML в .csproj, в зависимости от некоторых атрибутов текущего проекта.
Как я могу выполнить перенастройку всех 170 проектов C# без использования инструмента для замены текста, чтобы заменить номер целевой версии? Я хочу, чтобы Visual Studio делала все необходимые изменения и дополнения к тегам и их замену не позволяла это делать.
Я не знаю, как это сделать автоматически. Я думаю, что ваш лучший выбор - это стандартный макрокоманд для Windows, который вы используете клавиатурные команды. Но я бы выполнил их по одному, а не попытался чтобы объединить их вместе, поскольку может быть трудно определить, когда VS выполняется с его работой во всех случаях. –
Нет, вы не должны этого делать. * Особенно * не 4.5.2, он не имеет полезных новых типов и вряд ли будет охвачен будущими пакетами с несколькими таргетингом. Так же, как 4.0x не было. Сделайте это * один проект за один раз и только те, которые в нем нуждаются. Те, в которых вы * на самом деле * хотите добавить новую ссылочную сборку и изменить код для их использования. Если вы хотите игнорировать этот совет, вы, вероятно, это сделали, а затем используйте «Редактировать»> «Найти и заменить»> «Заменить в файлах», чтобы заменить элемент «TargetFrameworkVersion» в файлах * .csproj. Удостоверьтесь, что ваш источник управления прочен. –
@ HansPassant Ваше решение Find/Replace - это именно то, что я не хотел делать в соответствии с моим вопросом. Мне нужно более надежное решение. –