.NET FrameWork
.NET Framework 是以一种采用系统虚拟机运行的编程平台,以通用语言运行库(Common Language Runtime)为基础,支持多种语言(C#、VB、C++、Python等)的开发。NET也为应用程序接口(API)提供了新功能和开发工具。这些革新使得程序设计员可以同时进行Windows应用软件和网络应用软件以及组件和服务(web服务)的开发。.NET提供了一个新的反射性的且面向对象程序设计编程接口。.NET设计得足够通用化从而使许多不同高级语言都得以被汇集。.NET Framework 中的所有语言都提供基类库(BCL)。
.NET编译平台由核心组件及其他构件(开发工具及协议、WEB客户端及终端用户应用、WEB服务及企业服务器)所组成。微软的Windows作为操作系统运行于.NET框架之下,在Windows XP SP2/Windows Server 2003/Windows Vista系统中内置.NET框架,它也可以安装在大多数老版本的Windows系统中。.NET框架作为.NET开发平台的核心组件为Web服务及其它应用提供构建、移植和运行的环境。.NET组件是一个带有动态链接库扩展的预编制类模块。在运行的时候,通过使用一个用户使用程序被激活并加载到内存中。.NET组件是用于创建网络和Windows应用程序的,这些应用程序使一个应用程序所需的功能可以显示在外部。.NET平台还包含Web表单,Web表单是可从网上下载的标准接口。一个Web表单包含供使用者输入数据资料的文本框。然后使用者可以将表单提交给接收器。.NET平台至关重要的一部分就是网络服务器。网络服务器查询协议和标准的合集。应用程序可以使用网络服务器通过计算机网络交换数据资料。例如,当你在线上订购火车票,并输入你的信用卡卡号付款时,你就在使用网络服务器。
版本介绍
NET Framework 1.0
完整版本号 - 1.0.3705。这是最初的.NET构架,发行于2002年。它可以以一个独立且可重新分发的包的形式或在一个软件发展工具包集中被获得。它也是第一个微软Visual Studio .NET的发行版的一部分(也被称作Visual Studio.NET 2002)。
.NETFramework 1.1
完 整版本号 - 1.1.4322。这是首个主要的.NetFramework升级版本,发行于2003年。它可以以一个独立的可重新分发的包的形式或在一个软件发展工具包集中被获得。它也是第二个微软 Visual Studio .NET版本的一部分(也被称作Visual Studio.NET 2003)。它也是首个被Windows操作系统-Windows Server 2003所内置的.Net Framework版本。
自1.0版本以来的改进:
自带了对mobile asp .net控件的支持。这在1.0版本是以附加功能方式实现的,现在已经集成到框架的内部。安全方面的变更 - 使得Windows窗体代码以可靠的行为运行,从而可以在Internet环境内安全运行,并且加入了ASP .NET应用程序的代码安全访问功能。自带了对ODBC和Oracle数据库的支持。这在1.0版本是以附加功能方式实现的,现在已经集成到框架的内部。.NET Compact Framework- 这是一个用于智能设备(例如Pocket PC或者SmartPhone)的.Net Framework的子集。对IPv6的支持。大量的API变更。
.NETFramework 2.0
完整版本号 - 2.0.50727.42,发行于2005年10月27日。
.Net Framework 2.0的组件都包含在 Visual Studio 2005和SQL Server 2005里面。通过MSDNUniverse 版可以免费下载RTM版本。自1.1版本以来的改进:大量的API变更。新的API让需要管理.NET运行库实例的非.NET的应用程序可以做到这点。这 个新的API对.NET运行库的各种功能,包括:多线程、存储器分配、代码加载等,提供了很好的控制。它最初是为Microsoft SQL Server能够有效率的使用.NET运行库而设计的,因为Microsoft SQL Server拥有它自己的日程管理器和存储器管理器。
.NETFramework 3.0
此版本不支持 Windows 2000。
发行于2006年11月21日。曾用名“WinFX”。依然使用.NetFramework 2.0版本的公共语言运行库(CLR),并加入了适应未来软件发展方向的4个框架:
Windows Presentation Foundation(WPF):提供更佳的用户体验,用来开发Windows Forms程序以及流览器应用程序.Windows Communication Foundation(WCF):提供SOA(面向服务的软件构架)支持的安全的网络服务(Web Service)框架。Windows Workflow Foundation(WF):提供一个设计与发展工作流程导向(Workflow-oriented)应用程序基础支持的应用程序接口。WindowsCardSpace:提供一个SSO的解决方案,每个用户都有各自的CardSpace。
.NET Framework 3.5
此版本不支持 Windows 2000。
这个版本将包含一个支持C#和VB .Net中心的语言特性的编译器,以及对语言集成查询(LINQ,Language-Integrated Query)的支持。该版本随Visual Studio 2008一起发布。
同时,.NET Framework 3.5自动包含 .NETFramework 2.0 SP1以及 .Net Framework 3.0 SP1,用于为这两个版本提供安全性修复,以及少量新增的类库(如System.DateTimeOffest)。此版本提供的新功能有:
扩展方法(Extension Method)属性(Attribute),用于为扩展方法提供支持LINQ支持,包括LINQ toObject、LINQ to ADO .NET以及LINQto XML表达式目录树(Expression Tree),用于为Lambda表达式提 供支持与语言集成查询 (LINQ)和数据感知紧密集成。借助这个新功能,您可以使用相同的语法,在任何支持LINQ的语言中编写相关代码,以筛选和枚举多种类型的SQL数据、 集合、XML和数据集,以及创建它们的投影。利用asp .netAJAX可以创建更有效、更具交互性、高度个性化的Web体验,这些体验在所有最流行的浏览器上都能实现。用于生成WCF服务的全新Web协议支 持,包括AJAX、JSON、REST、POX、RSS、ATOM和若干新的WS-*标准。VisualStudio 2008中面向WF、WCF和WPF的完整工具支持,其中包括支持工作流的服务这一新技术。.Net Framework3.5基类库 (BCL)中的新类可满足许多常见的客户请求。
该版本新增的ASP .NET功能,随Visual Studio2008 SP1发布,此版本提供了下列的新功能:
新增的ASP .NET功能包括ASP .NET动态数据和ASP .NET AJAX附加功能,前者提供了无需编写代码就可实现数据驱动的快速开发的丰富支架框架,后者为管理浏览器历史记录提供了支持(后退按钮支持)。ADO .NET Entity Framework。对SQL Server 2008的数据提供程序支持。.Net Framework客户端配置文档是完整版.Net Framework的子集,面向客户端应用程序。这改善了尚未安装.Net Framework的计算机上的安装体验。改进WindowsPresentation Foundation的性能,其中包括启动速度的位图效果性能的提高。为WindowsPresentation Foundation增加的功能包括对业务线应用程序的更好支持、本机闪屏支持、DirectX像素着色器支持以及新的WebBrowser控件。 ClickOnce应用程序发布者可以根据具体情况决定是否取消签名和散列,开发人员可以以编程方式安装显示自定义署名的ClickOnce应用程 序,ClickOnce错误对话框支持指向网络上特定于应用程序的支持站点的链接。用于SQL Server的.Net Framework数据提供程序 (System.Data.SqlClient)完全支持SQL Server 2008数据库引擎的所有新功能。有关.Net Framework对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控件,该控件以可自定义的列表格式显示数据。此命名空间还包含新的矢量形状。
.NETFramework 4.0
此版本不支持 Windows 2000。
.NET Framework 4.0主要增加了并行支持,于2010年4月12日推出。
企业基础 .NET提供开发软件的独立平台,自带高度安全的网络系统,相当倚重软件组件以及组件导向程序。在这方面它完全取代前者(COM1)。
.NETFramework 4.5
此版本不支持 Windows 2000、Windows XP。
.NET Framework 4.5 发行于2012年8月16日,是支持生成和运行下一代应用程序和 Web 服务的内部 Windows 组件。 .NET Framework 的关键组件为公共语言运行时 (CLR) 和 .NET Framework 类库(包括ADO .NET、ASP .NET、Windows 窗体和Windows Presentation Foundation (WPF) 和 WindowsWorkflow Foundation (WF))。 .NET Framework 提供了托管执行环境、简化的开发和部署以及与各种编程语言的集成。[5]
.NET for Windows Store apps:Windows Metro 风格 应用程序为特定窗体因素并利用 Windows 操作系统的功能。通过使用 C# 或 Visual Basic,.NET Framework 4.5 的子集可用于生成 Windows 的 Metro 风格 应用程序。 这个子集称为 .NET for WindowsStore apps
更新内容:
1.在部署期间,能够通过检测和关闭.NET Framework 4 应用程序来减少系统重启。为大于20 GB 在 64 位平台上 (GB) 的数组支持。 此功能可在应用程序配置文件中启用。
2.通过服务器的背景垃圾回收改进性能。 当您使用服务器垃圾回收在 .NET Framework 4.5 中时,后台垃圾回收自动启用。
3.背景实时 (JIT) 生成,可以选择可用在多核处理器改进应用程序性能。
4.在它超时之前,能够限制正则表达式引擎要多久能尝试解决正则表达式。
5.能够定义应用程序域的默认区域性。
6.Unicode (UTF-16) 编码的控制台支持。
7.为版本控制区域性字符串排序和比较数据支持。
8.在检索资源时,请改进性能。 请参见 打包和部署桌面应用程序中的资源。
9.Zip 压缩改进可减少压缩文件的大小。
10.通过CustomReflectionContext 类,能够自定义反射上下文来重写默认反射行为。
11.对于国际化域名的 2008 版在应用程序 (IDNA) 标准的支持,当System.Globalization.IdnMapping 选件类在 Windows 8 使用时。
12.当 .NET Framework在 Windows 8 使用时,到操作系统的字符串比较的委托实现 Unicode 6.0。 在其他平台上运行时,.NET Framework 包括其自己的实现 Unicode 5.x 的字符串比较数据。每个应用程序域的基础上能够计算字符串的哈希代码。
C#与.NET的关系
● 它是专门为与Microsoft的.NET Framework一起使用而设计的。(.NET Framework是一个功能非常丰富的平台,可开发、部署和执行分布式应用程序)。
● 它是一种基于现代面向对象设计方法的语言,在设计它时,Microsoft还吸取了其他类似语言的经验,这些语言是近20年来面向对象规则得到广泛应用后才开发出来的。
有一个很重要的问题要弄明白:C#就其本身而言只是一种语言,尽管它是用于生成面向.NET环境的代码,但它本身不是.NET的一部分。.NET支持的一些特性,C#并不支持。而C#语言支持的另一些特性,.NET却不支持(例如运算符重载)!
但是,因为C#语言是和.NET一起使用的,所以如果要使用C#高效地开发应用程序,理解Framework就非常重要。