以下方法,本人没尝试过,如可行一定第一时间说明!
在VS2005中打开VS2008写的程序:
1.用文本编辑器打开sln文件
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
将以上内容修改后成为以下内容:
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
用文本编辑器打开csproj文件,在文件的开头删除以下内容:
<?xml version="1.0" encoding="utf-8"?>
找到以下这个XML文件节点
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
删除一个属性,成为以下内容:
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
找到以下这个XML文件节点
<Import Project="$(MSBuildToolsPath)Microsoft.CSharp.targets" />
经修改后,成为以下内容:
<Import Project="$(MSBuildBinPath)Microsoft.CSharp.targets" />
注意:要在VS2005下运行VS2008的项目一定不能使用到VS2008有,VS2005无的类和命名空间,同时第一次运行的时候要删除系统默认添加的新版的命名空间和类。
如:using System.Linq;
using System.Collections.Generic;
这样VS2005里就能运行VS2008项目了!
VS2005建立的Web Application项目,升级到VS2008后,就无法再用VS2005打开了。
要使WebApplication项目文件兼容VS2005和VS2008,需在.csproj文件中找到如下一行:
<ImportProject="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets"/>
升级之前是:
<ImportProject="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\WebApplications\Microsoft.WebApplication.targets"/>
如果要同时兼容VS2005和VS2008,必须改为:
<ImportProject="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets"Condition="'$(Solutions.VSVersion)' == '9.0'" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\WebApplications\Microsoft.WebApplication.targets"Condition="'$(Solutions.VSVersion)' == '8.0'" />