Я не уверен насчет проектов «Веб-сайт» (а не «Веб-приложение»), но обычно вам не нужны разные файлы проектов для 2005 и 2008 годов. Вам нужны только отдельные файлы решений.
Просто откройте свой проект 2005 года в 2008 году и дайте ему возможность обновить ваше решение / проекты. Вы можете получить диалоговое окно с просьбой обновить версии CLR, просто скажите «нет».
Получив работающее решение 2008 года, скопируйте файл * .sln под другим именем (я называю его копией * .2005.sln), откройте скопированный файл * .sln в блокноте или в своем любимом текстовом редакторе. Найдите «Формат версии 10.0» во 2-й строке и измените на «Формат версии 9.0». Сохраните файл.
Вот и все, ваш обновленный файл решения работает в VS 2008, а тот, который вы скопировали и изменили, работает в VS 2005.
Есть еще один шаг, если у вас есть проекты веб-приложений. В файле vbproj или csproj веб-приложения найдите строку:
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplications.targets" Condition="" />
и замените одну строку этими двумя:
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\WebApplications\Microsoft.WebApplications.targets" Condition="'$(Solutions.VSVersion)' == '8.0'" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplications.targets" Condition="'$(Solutions.VSVersion)' == '9.0'" />
Эти две строки условно выберут правильный путь MSBuild в зависимости от используемой версии VS.