Как преобразовать решение VS 2010 обратно в 2008
-
19-09-2019 - |
Вопрос
Мы начали использовать VS 2010 и были очень довольны этим, поэтому мы преобразовали наш проект в решение 2010 года (по-прежнему .net 3.5) и продолжили нашу разработку в 2010 году.Однако в последнее время мы получаем много ошибок и хотим вернуться к 2008 году.Файлы решения изменились (повсюду добавлены новые проекты и файлы), но все по-прежнему в .net 3.5.Мне было интересно, есть ли простой способ вернуться к 2008 году.
Решение
В зависимости от того, сохранялась ли структура файла решения аналогичной между 2008 и 2010 годами, вам просто нужно создать пустой файл решения в 2008 году, посмотреть на верхнюю строку идентификатора в нем и скопировать его в другой файл решения.
Однако я сомневаюсь, что они сохранили это прежним, поскольку интегрировали ряд функций в файлы решений.
Вам было бы лучше создать новое пустое решение в 2008 году и использовать "Добавить существующий проект", чтобы повторно импортировать их.Пока у вас нет каких-либо пользовательских ссылок на "решение", это будет работать (никаких папок решений, настроек сервера и т.д.).
Это, вероятно, самый быстрый и прямой маршрут.
Другие советы
У меня был успех, изменив первые 2 строки из:
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Для
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Предполагая, что ваше решение находится под контролем исходных текстов и переход с версии 2008 на версию 2010 был единственным изменением при этой проверке, просто сравните две версии и посмотрите, что изменилось.
Затем измените затронутые строки обратно на версию VS 2008, и все будет готово.
Автоматического процесса не существует, поскольку Microsoft рассматривает это как одностороннюю операцию.
Вы можете вручную отредактировать sln-файл в текстовом редакторе.Есть поле с именем version или что-то в этом роде, просто измените его с 10 на 9.
Этот вопрос
Как преобразовать решение Visual Studio .NET 2008 в Visual Studio .NET 2005?
также может быть применимо для перехода с 2010 года обратно на 2008 год.
Вы можете использовать "Project Converter".:http://www.emmet-gray.com/Articles/ProjectConverter.htm
Я только что нашел это.Я собираюсь протестировать это прямо сейчас!:-)
Пожалуйста, попробуйте следующее (найдите первую строку и замените на вторую строку, чтобы преобразовать решение 2010 года в 2008).:
TargetFrameworkMoniker = ".NETFramework,Version=v2.0"
TargetFramework = "3.5"
# Visual Studio 10
# Visual Studio 2008
Microsoft Visual Studio Solution File, Format Version 11.00
Microsoft Visual Studio Solution File, Format Version 10.00
<Project ToolsVersion="4.0"
<Project ToolsVersion="3.5"
<ProductVersion>10.0.20506</ProductVersion>
<ProductVersion>9.0.30729</ProductVersion>
\VisualStudio\v10.0\
\VisualStudio\v9.0\
<Import Project="$(MSBuildToolsPath)\Workflow.Targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Windows Workflow Foundation\v3.5\Workflow.Targets" />
Это сработало в моих решениях, вы можете попробовать посмотреть, подходит ли это к вашим случаям.
как сообщает maZZoo, вам нужно заменить эти строки в .sln, но если вы проверите свою панель вывода, у вас может появиться предупреждение об использовании ToolsVersion="4.0", вы должны заменить это в .csproj Для:
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">