Как преобразовать решение Visual Studio .NET 2008 в Visual Studio .NET 2005?

StackOverflow https://stackoverflow.com/questions/831289

Вопрос

Предположим, что решение содержит только классы и все эти классы написаны в соответствии со спецификациями .NET 2.0.Если бы это решение было открыто, преобразовано и сохранено в Visual Studio 2008, можно ли было бы повторно открыть это решение позже в Visual Studio 2005 с некоторыми минимальными изменениями в файле .SLN?

Как бы это сделать?

Существует ли инструмент, который будет «конвертировать» файлы .SLN с 2008 по 2005 год, если все классы, содержащиеся в решении, уже написаны в соответствии со спецификациями .NET 2.0?

Это было полезно?

Решение

Как правило, единственное, что вам нужно сделать с файлами .SLN, это изменить номер версии в верхней части файла.

Ваши файлы проекта CS также будут в порядке, а если нет, их можно настроить так, чтобы они были в порядке как в 2005, так и в 2008 году.

Некоторое время мы работали с двумя файлами решений (05 и 08), которые использовали один и тот же набор файлов проекта CS.

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

«Настройка» для файлов проекта выглядит следующим образом:

Проекты CS, созданные на VS2008, будут содержать строку:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

VS2005 захлебнется этим, и вам нужно изменить его на следующее:

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

Последний будет работать как с 2005, так и с 2008 годами.

Другие советы

Если вы не используете какой-либо " необычный " В 2008 году, по моему опыту, меняется только номер версии в нескольких местах. Это может быть отредактировано вручную (это вверху файла IIRC). По крайней мере, стоит попробовать. Если вы используете специфичные для VS2008 функции (дизайнеры и т. Д.), Это может не сработать, но для простых библиотек классов мне это удалось.

Вас может заинтересовать сообщение в блоге о сосуществовании VS2005 и VS2008 , о котором я писал некоторое время назад.

Здесь находится конвертер http://www.emmet-gray.com/ Articles / ProjectConverter.htm (также работает с VS 2010).

Существует также http://www.dsmyth.net/wiki/Downloads_VS2008ToVS2005Patcher.x / а>
(ссылка в данный момент не работает?).

Я также нашел это http://www.codeplex.com/Vs2008BackMigration , но я этого не сделал проверить это.

Да, это возможно, если вы " понижаете рейтинг " файлы решения.

Нет, такого инструмента, о котором я знаю, нет, и я посмотрел.

У вас есть три варианта:

<Ол>
  • Не открывайте файл решения в 2008 году и, следовательно, никогда не обновляйте его
  • Не смешивать версии клиентов с одними и теми же файлами (т. е. придерживаться версии 2005 или всех обновлений)
  • Сохраняйте отдельные файлы решений на 2005 и 2008 годы, убедитесь, что все одинаковые проекты присутствуют в обоих
  • Спасибо @Will Dean за напоминание о том, что файлами проекта действительно можно поделиться. Обратите внимание, что они тронуты редактором 2008 года, но их можно открыть в 2005 году.

    Вы можете попробовать это. YMMV

    http://www.emmet-gray.com/Articles/ProjectConverter.htm

    Я помню, что он был опубликован в блоге Джона Скитса несколько месяцев назад и, похоже, получил одобрение от людей

    Прямого пути не существует, и если вы попробуете, это будет трудная задача.Самый простой способ — создать новый проект 2005 года и добавить свои классы.

    Для начинающих:вот различия, которые вы увидите:

    Файлы .csproj:(они основаны на схеме MSBuild)

    (редактировать)

    • ИнструментыВерсия
    • Версия продукта
    • ProjectVersion

    (удалять)

    • СтарыйИнструментыВерсия
    • Целевая структура

    .sln файлы:(без схемы)

    • Формат Версия 10.0

    и т. д.

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top