将Web应用程序从.NET 1.1升级到.NET 3.5会有什么令人信服的理由?
问题不在于"是否应该", - 在功能和增加的编译时检查方面; 它几乎是一个给定的退出1.1框架和2.0框架.问题是,你应该多快移植?需要改变什么?
您的第一步是将应用程序移植到.NET 2.0.原因是.NET 2.0中有许多以前不存在的功能,并且之前的功能已被弃用.(在ASP.NET中,2.0版中有许多功能被弃用).
.NET 2.0允许更强大的类型安全性,可空类型和框架中的更改.2.0表示(我会考虑).NET平台的第一个"真实"版本.它是一个重要的竞争者,你会发现你在1.1中使用的一些框架内容已经在2.0中进行了修改.
这不是一个简单的"移植代码并获得好处"的场景.如果你想获得好处,你将不得不重写一些代码(最值得注意的是,涉及泛型的东西); 但即使在较大的.NET框架中,也有很多"幕后更改",你需要逐步移植它:不要直接从1.1 - 3.5跳转.
1.1 - 2.0
泛型
静态类
可空类型
收益运算符
属性访问修饰符
部分类型
别名
.NET 2.0和.NET 3.0之间有一系列的变化.有一个完整的范式转变.(虽然承认这是一个自愿的转变). 维基百科有一整节专门介绍它,但我会(有些!)改变这里:
.NET Framework更改
Windows Presentation Foundation(WPF)
Windows Communication Foundation(WCF)
Windows Workflow Foundation
Windows CardSpace
C#更改:
LINQ
对象初始化者
收集初始化者
匿名类型
Lambda表达式
自动属性
扩展方法(来源:维基百科)
显然,还有更多.从1.1到2.0的跳跃值得整个发布周期.
.net 1.1已弃用,未进一步开发.我不确定安全问题.但总的来说,它被放弃了,而且从2.0开始,microsoft确保了在新版本中的后向兼容性,这与1.1不同.
所以,如果你有机会移动 - 移动.如果您获得了新的语言功能,您将获得一个不断构建的框架.如果你需要它,你会得到linq,silverlight支持,当然是泛型等等.