平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“.NET Framework各版本(.NET2.0 3.0 3.5 4.……”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
什么是.NET Framework?
结合项目来看,.NET Framework又称 .Net框架。是由微软开发,一个致力于敏捷软件开发(Agile software development)、更快应用开发(Rapid application development)、平台无关性和网络透明化的软件开发平台。.NET是微软为下一个十年对服务器和桌面型软件工程迈出的第一步。.NET包含许多有助于互联网和内部网应用迅捷开发的技术。
理解这一步时,.NET框架是微软公司继Windows DNA之后的新开发平台。.NET框架是以一种采用系统虚拟机运行的编程平台,以通用语言运行库(Common Language Runtime)为基础,兼容多种语言(C#、VB、C++、Python等)的开发。
实际处理时,.NET也为应用程序接口(API)提供了新功能和开发工具。这些革新使得程序设计员能够同时进行Windows应用软件和网络应用软件以及组件和服务(web服务)的开发。.NET提供了一个新的反射性的且面向对象程序设计编程接口。.NET设计得足够通用化从而使许多不同高级语言都得以被汇集。
.NET Framework有哪些版本?
在这个场景下,.NET框架 1.0、.NET框架 1.1、.NET框架 2.0、.NET框架 3.0、.NET框架 3.5、.NET框架 4.0。
.NET Framework各版本概述和选择建议
落到代码里,NET Framework 1.0(CLR 1.0)和1.1(CLR 1.1)已经过时,强烈建议不要采用。
落到代码里,NET Framework 2.0(CLR 2.0)是目前广泛采用的版本,提供了大部分的基础功能。
在这个场景下,NET Framework 3.0(CLR 2.0)增加了WPF、WCF、WF和Card Space等功能。
从实现思路看,NET Framework 3.5(CLR 2.0)增加了LINQ、ADO.NET Entity Framework等功能。
落到代码里,NET Framework 4.0(CLR 4.0)重新实现同时改进了以前版本.NET Framework的功能,并且增加了Parallel 实际处理时,LINQ、Task Parallel Library等新功能,强烈建议采用。
.net framework各个版本详细说明:
.NET框架 1.0
完整版本号 - 1.0.3705
在这个场景下,这是最初的.NET构架,发行于2002年。它能够以一个独立且可重新分发的包的形式或在一个软件发展工具包集中被获得。它也是第一个微软Visual Studio .NET的发行版的一部分(也被称作Visual Studio .NET 2002)。
.NET框架 1.1
完整版本号 - 1.1.4322
在这个场景下,这是首个主要的.NET框架升级版本,发行于2003年。它能够以一个独立的可重新分发的包的形式或在一个软件发展工具包集中被获得。它也是第二个微软Visual Studio .NET版本的一部分(也被称作Visual Studio .NET 2003)。它也是首个被Windows操作系统-Windows Server 2003所内置的.NET框架版本。
自1.0版本以来的改进:
理解这一步时,自带了对mobile asp .net控件的兼容。这在1.0版本是以附加功能方式实现的,现在已经集成到框架的内部。安全方面的变更 - 使得Windows窗体代码以可靠的行为运行,从而能够在Internet环境内安全运行,同时且加入了ASP .NET应用程序的代码安全访问功能。自带了对ODBC和Oracle数据库的兼容。这在1.0版本是以附加功能方式实现的,现在已经集成到框架的内部。.NET Compact Framework- 这是一个用来智能设备(比如Pocket PC或者SmartPhone)的.NET框架的子集。对IPv6的兼容。大量的API变更。
.NET框架 2.0
实际处理时,完整版本号 - 2.0.50727.42,发行于2005年10月27日。
从实现思路看,.NET框架 2.0的组件都包含在 Visual Studio 2005和SQL Server 2005里面。借助MSDN Universe版能够免费下载RTM版本。
自1.1版本以来的改进:
落到代码里,大量的API变更。新的API让需管理.NET运行库实例的非.NET的应用程序能够做到这点。这个新的API对.NET运行库的各种功能,包括:多线程、存储器分配、代码加载等,提供了很好的控制。它最初是为Microsoft SQL Server能够有效率的采用.NET运行库而设计的,因为Microsoft SQL Server拥有它自己的日程管理器和存储器管理器。NET框架 2.0 SP1随.NET框架 3.5同时发行,请参看.NET框架 3.5一节。.NET框架 2.0 SP2随.NET框架 3.5 SP1同时发行,请参看.NET框架 3.5 SP1一节。
.NET框架 3.0
主条目:.NET框架 3.0
理解这一步时,发布日期2006/11/21。曾用名“WinFX”。依然采用.NET框架 2.0版本的公共语言运行库(CLR),同时加入了适应未来软件发展方向的4个框架:
从实现思路看,Windows Presentation Foundation(WPF):提供更佳的用户体验,用来开发Windows Forms程序以及流览器应用程序.Windows Communication Foundation(WCF):提供SOA(面向服务的软件构架)兼容的安全的网络服务(WebService)框架。Windows Workflow Foundation(WF):提供一个设计与发展工作流程导向(Workflow-oriented)应用程序基础兼容的应用程序接口。Windows CardSpace:提供一个SSO的解决方案,每个用户都有各自的CardSpace。.NET框架 3.0 SP1随.NET框架 3.5同时发行,请参看.NET框架 3.5。.NET框架 3.0 SP2随.NET框架 3.5 SP1同时发行,请参看.NET框架 3.5 SP1。
.NET框架 3.5
实际处理时,这个版本将包含一个兼容C#和VB .Net中心的语言特性的编译器,以及对语言集成查询(LINQ, Language-Integrated Query)的兼容。该版本随Visual Studio 2008一起发布。
理解这一步时,同时,.NET框架 3.5自动包含.NET框架 2.0 SP1以及.NET框架 3.0 SP1,用来为这两个版本提供安全性修复,以及少量新增的类库(如System.DateTimeOffest),此版本提供的新功能有:
在这个场景下,扩展方法(Extension Method)属性(Attribute),用来为扩展方法提供兼容LINQ兼容,包括LINQ to Object、LINQ to ADO .NET以及LINQ to XML表达式目录树(Expression Tree),用来为Lambda表达式提供兼容与语言集成查询 (LINQ)和数据感知紧密集成。借助这个新功能,您能够采用相同的语法,在任何兼容LINQ的语言中编写相关代码,以筛选和枚举多种类型的SQL数据、集合、XML和数据集,以及新建它们的投影。借助asp .netAJAX能够新建更有效、更具交互性、高度个性化的Web体验,这些体验在所有最流行的浏览器上都能实现。用来生成WCF服务的全新Web协议兼容,包括AJAX、JSON、REST、POX、RSS、ATOM和若干新的WS-*标准。Visual Studio 2008中面向WF、WCF和WPF的完整工具兼容,其中包括兼容工作流的服务这一新技术。.NET框架 3.5基类库 (BCL)中的新类可满足许多常用的客户请求。[编辑].NET框架 3.5 SP1 .NET框架 3.5 SP1自动包含.NET框架 2.0 SP2以及.NET框架 3.0 SP2。该版本随VisualStudio 2008 SP1发布,此版本提供了下列的新功能:
从实现思路看,新增的ASP .NET功能包括ASP .NET动态数据和ASP .NET AJAX附加功能,前者提供了无需编写代码就可实现数据驱动的更快开发的丰富支架框架,后者为管理浏览器历史记录提供了兼容(后退按钮兼容)。ADO .NET Entity Framework。对SQL Server 2008的数据提供程序兼容。.NET框架客户端设置文档是完整版.NET框架的子集,面向客户端应用程序。这改善了尚未安装.NET框架的计算机上的安装体验。改进Windows Presentation Foundation的性能,其中包括启动速度的位图效果性能的提高。为Windows Presentation Foundation增加的功能包括对业务线应用程序的更好兼容、本机闪屏兼容、DirectX像素着色器兼容以及新的WebBrowser控件。ClickOnce应用程序发布者能够根据具体情况决定是否取消签名和散列,开发人员能够以编程方式安装显示自定义署名的ClickOnce应用程序,ClickOnce错误对话框兼容指向网络上特定于应用程序的兼容站点的链接。用来SQL Server的.NET框架数据提供程序(System.Data.SqlClient)完全兼容SQL Server 2008数据库引擎的所有新功能。有关.NET框架对SQL Server 2008的兼容的更多信息,请参见SQL Server中的新功能 (ADO .NET)。ADO .NET数据平台是一种多版本策略,它使开发人员能够针对概念性实体数据模型进行编程,从而减轻他们的编码和维护工作。此平台提供了ADO .NET Entity Framework、实体数据模型 (EDM)、对象服务、LINQ to Entities、Entity SQL、EntityClient、ADO .NET数据服务及实体数据模型工具。Windows Communication Foundation现在提供了改进的互操作性兼容,增强了部分信任方案中的调试体验,同时扩展了集成协议兼容以更广泛地应用来Web 2.0应用程序,从而使DataContract串行化程序更易于采用。Microsoft.VisualBasic.PowerPacks命名空间引入了新的DataRepeater控件,该控件以可自定义的列表格式显示数据。此命名空间还包含新的矢量形状。
.NET框架 4.0
在这个场景下,.NET框架 4.0主要增加了同时行兼容,英文版于2010年4月12日推出。
落到代码里,企业基础 .NET提供开发软件的独立平台,自带高度安全的网络系统,相当倚重软件组件以及组件导向程序。在这方面它完全取代前者(COM)。
实际处理时,.NET框架版本已经升级到了3.5。但是.net framework 3.0和3.5其核心部分还是.net2.0的东西,只不过在其基础上增加了一些个类库。以下这个图表能够很清楚的描述了3个版本框架的不同之处。
.net framework 2.0 = CLR 2.0 + FCL(framework class library)
.net framework 3.0 = .net framework 2.0 + SP1 + WPF + WCF + WF + CardSpace
.net framework 3.5 = .net framework 3.0 + SP2 + new compiler
在这个场景下,这三个版本framework的CLR都是2.0,因此,你会发现asp.net的runtime还是只有1.1和2.0,像Linq这些新功能其实只是用新的编译器加上一些新的类库来实现的,3.5版本同时没有对CLR做大的升级。
- Asp.Net MVC3.0如何项目部署到Win7 64位系统
- Win7旗舰版中的IIS7设置asp.net的运行环境
- win7和win2008 r2下设置IIS7(ASP.net运行环境)
- Win7旗舰版中的IIS设置asp.net的运行环境设置教程(图文教程+视频)
- Win7中IIS的ASP.NET环境设置简洁版
- Win10下安装Sql Server 2014反复提示需安装.NET Framework 3.5 SP1的解决方案
- 采用aspnet_regiis.exe重新注册.NET Framework
- 无法启动.NET Framework NGEN v4.0.30319_X86服务的解决方法
- IIS和.net framework 4.0的安装顺序导致的问题(重新注册.net 4.0)
- Windows Server 2012 R2或2016无法安装.NET Framework 3.5.1的解决方法
- win7-vs2012下安装.net frame work 的过程图文详解

