将代码从.Net 1.1升级到2.0 / 3.5(C#)

时间:2009-03-30 09:27:26

标签: c# .net

我正在升级早期.NET 1.1的Windows客户端应用程序。之前的开发人员手写了许多可以使用较新版本的.NET自动完成的解决方案。由于我对.NET比较新鲜,并且没有完整概述我在这里要求的功能。

以后的.NET版本中提供的最值得注意的类和语法功能是什么,可能会使用库中的功能替换手写代码?

4 个答案:

答案 0 :(得分:4)

最重要的变化:

  • 使用泛型集合而不是ArrayList,Hashtable等。
  • 对于C#3.5,使用LINQ而不是手动过滤/投影
  • 使用通用代理而不必一直声明自己的代理
  • 使用匿名方法,而不是创建用于在一个位置创建委托的单行方法
  • 将BackgroundWorker用于WinForms后台任务

在我看来,泛型是最广泛的变化。

答案 1 :(得分:3)

就个人而言,我会留下任何1.1代码,在使用2.0 / 3.5编译时工作正常。除非你有时间,否则你要重写的任何东西都必须再次测试,你仍然可能会引入你的测试无法找到的新bug。

我希望将来用于未来版本的东西是泛型和LINQ。 .NET 2的泛型和.NET 3.5的LINQ。

答案 2 :(得分:0)

LINQ是一次重大飞跃。可能在某些地方使用它(例如XML代码)。此外,泛型可能会减少对某些类的需求。

答案 3 :(得分:0)

还要注意并测试框架版本之间破坏更改的可能影响。谷歌搜索应该揭示最重要的问题。