将MSbuild文件从4.0降级到3.5
问题描述:
我有一堆使用Visual Studio 2010创建的csproj文件和目标.NET 4.0。将MSbuild文件从4.0降级到3.5
我现在试图用xbuild编译Mono 2.6.7,但2.6.7无法编译verison 4 msbuild项目。 (2.10.1没有问题,这是我们一直在使用的,但我想在2.6.7上做一个实验)。
使用MonoDevelop我已经将运行时版本更改为Mono/.NET 3.5,它在2.6.7下编译得很好。但是更改为使用xbuild失败。
要将MSBuild版本更改为3.5,需要执行哪些步骤?在文件的csproj最上面一行是很明显的:
<Project ToolsVersion="4.0"
并改变很容易,但我很担心有一些也应该改变不太明显的事情。
任何人都知道从4.0降级到3.5 msbuild文件的权威方法?
答
使用MonoDevelop,Project->将解决方案导出为VS2008格式。
答
我不知道一个权威指南,但已经做了几次,我可以说我所知道的。
对于一个简单的类库或WinForms应用程序,这是很简单的:需要
- 对项目文件的
ToolsVersion
被设置为3.5,为你指示。 - 如果在项目文件中有
OldToolsVersion
元素(表示它以前已升级),则应删除它。FileUpgradeFlags
和UpgradeBackupLocation
元素也是如此。基本上,您不希望OldToolsVersion
与当前版本相同。 - 如果您使用的是客户端框架配置文件,则在3.5中称该元素为
TargetFrameworkSubset
。在4.0中,它被称为TargetFrameworkProfile
,所以元素应该被重命名。 (不确定此单声道对Mono的适用性)。
谢谢迈克尔,一如既往地感谢。 – 2011-04-09 01:31:03