什么.net版本VS2005用于C#项目

时间:2012-07-26 19:57:09

标签: c# .net visual-studio

我正在将VS2008上构建的项目移植到VS2005,因为我们的次要.NET版本需要2.0而不是3.5,而我们的其余代码都是基于VS2005构建的。所以我在.sln文件中修改了2008年到2005年的visual studio版本

Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005

所以我可以将.sln加载到VS2005中。我有一些构建问题,主要是“var”,在我用真实数据类型修改这些行之后,代码编译并运行。

但是在项目装配参考中。我发现我的代码仍然是参考Linq,它来自.NET 3.5:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.5\System.Xml.Linq.dll

当我打开添加新引用的对话框时,我可以看到.NET版本2.0,3.5甚至4.0(尽管在大多数情况下CLR运行时版本是2.0.50727。有时是1.x,有时是4.0 ,Linq的运行时版本是2.0.50727)。

我认为VS2005只支持.NET 2.0,这似乎不是这种情况。所以我想我怎么能确保我的应用程序只需要.NET 2.0框架。是否足以确保我只引用.NET 2.0及以下引用?

2 个答案:

答案 0 :(得分:4)

只要目标框架是.NET 2.0 ,您就不会引用目标更高的.NET框架版本的任何库,您的应用应该运行得很好在.NET 2.0上。

也就是说,我相信Visual Studio 2008支持多目标,因此您应该能够使用VS2008,但仍然将.NET 2.0作为输出类型。此外,VS2010和VS2012RC还仅支持.NET 2.0项目。

要回答标题中的确切问题(对于那些按标题查找此页面的人的利益),Visual Studio 2005中默认使用的.NET版本是.NET v2.0。

答案 1 :(得分:4)

您仍然可以使用VS2008。 VS2008完全支持仅限2.0的项目(只需更改项目设置)。在2.0模式下,VS将禁用任何3.0和3.5程序集以及依赖于3.0或3.5库类的任何C#语言功能(例如扩展方法,但有一种解决方法可以让那些使用2.0的人)。

我会说VS2010也支持仅限2.0的项目。