我正在将基于VS2008构建的项目移植到VS2005,因为我们的次要.NET版本必须是2.0而不是3.5,并且其余代码都基于VS2005。因此,我在.sln文件中将Visual Studio版本从2008修改为2005。

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


因此,我能够将.sln加载到VS2005中。我有一些构建问题,主要是“ var”,在我用实际数据类型修改了这些行之后,代码进行了编译并运行。

但是在项目组装时参考。我发现我的代码仍然引用来自.NET 3.5的Linq:

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。Linq的运行时有时为1.x,有时为4.0版本是2.0.50727)。

我以为VS2005仅支持.NET 2.0,在这里似乎不是如此。因此,我想我该如何确保我的应用程序仅需要.NET 2.0框架。是否足以确保我仅参考.NET 2.0及以下参考?

最佳答案

只要目标框架是.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。

关于c# - .net版本VS2005用于C#项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11677076/

10-11 22:41
查看更多