2011-02-03 183 views
0

为了使用C#4.0功能,我需要对使用.NET 2.0/C#构建的应用程序进行哪些更改。最近我遇到了一个问题,当试图在.NET 2.0/C#2.0开发的产品中添加可选参数时。从.NET 2.0迁移到.NET 4.0

+0

这个问题到底是什么......? – 2011-02-03 07:25:23

+0

确保您的生产服务器已安装4.0,并且您的应用程序池正在使用4.0(这是手动步骤)。在向导中升级了web.config和其他东西,但使用ReSharper我最终不得不做了一些其他更改...... – Zachary 2011-02-03 07:29:23

回答

-1

如果我没有记错,.NET 2.0中的C#不支持可选参数。

+0

只要你愿意,你可以“定向”.NET 2.0并使用可选参数正在使用C#4编译器。 – Sam 2014-04-02 19:22:17

0

也许您已将Visual Studio解决方案迁移至2010年,但您忘记将项目的属性中的目标框架更改为4.0。

只需转到解决方案项目中的属性(显然,迁移到Visual Studio 2010解决方案)并将目标框架更改为4.0。

这就是您所有的C#代码库都将使用.NET Framework 4.0和C#4.0。我很肯定你不需要改变你的代码,但是,也许你会发现某些类,方法,属性现在已经过时了,但它仍然会编译。

如果您不知道如何做到这一点,请留言。

+0

我不能使用VS 2008来处理.NET 4.0和C#4.0功能,假设我已经安装了。NET 4.0在我的电脑上。 – 2011-02-08 10:25:34

0

从理论上讲,C#4应该与C#2向后兼容。
实际上,我已经做了好几次没有问题,我认为唯一明显的问题是如果您命名了一些定义的类由.net 4.0框架。

0

您不能在面向.NET 2.0的应用程序中使用.NET 4.0特定功能。您将需要迁移到.NET 4.0。

0

不能很容易转换成一个更高的版本到更低的版本。

可以轻松转换成较低的版本到较高的版本。

2

大多数2.0程序在4.0版本上没有任何改变。只有在1.1到2.0之间出现了很多不兼容的变化。

1

最近遇到的一个问题是,将3.5项目升级到4.0(从Visual Studio 2008升级到Visual Studio 2010)时,升级到4.0后我没有参考System.Core,无法通过它添加Visual Studio代替显示消息:

无法添加对“System.Core”的引用。该组件已经被构建系统自动引用。

你需要有System.Core一个参考,如果你想使用var关键字和LINQ扩展方法。

它可以手动添加(或者如果删除,则为readded)。详情请见博文System.Core in VS2010 Projects