三十年婚姻是什么婚| 痛风发作吃什么药| elite是什么意思| 贱痣是什么意思| 经济危机是什么意思| 一什么春笋| nk是什么意思| 血压偏低有什么危害| 脑内散在缺血灶是什么意思| 象是什么结构的字| v3是什么意思| 农历12月26日是什么星座| 似水年华是什么意思| 胆碱酯酶高是什么意思| 骨质增生是什么意思| 怀孕上火吃什么能降火| 欧诗漫是个什么档次| 做什么事要从头来| 月子病是什么症状| 杨字五行属什么| 八月五号是什么星座| 脚底板痒是什么原因| 安溪铁观音属于什么茶| 阴毛是什么| 马路上的菱形标志是什么意思| 白发越来越多是什么原因造成的| 碧根果和核桃有什么区别| 威士忌兑什么好喝| 筋头巴脑是什么东西| 节节草能治什么病| 一个王一个八念什么| 什么是蜂胶| 日加华念什么| 西红柿拌白糖又叫什么| 居住证签注是什么意思| 三个鬼是什么字| bur什么意思| 榴莲和什么水果相克| 不排卵是什么原因| 什么是正月| 为什么胸部会胀痛| 花椒有什么功效与作用| 九月十三号是什么星座| 舌头麻木吃什么药| 头皮一阵一阵发麻是什么原因| 脑ct挂什么科| 枸橼酸西地那非片有什么副作用| 干贝和瑶柱有什么区别| 穆斯林为什么不吃猪肉| 木薯淀粉是什么做的| 紫癜挂什么科| 尿道口流脓吃什么药| 看病人送什么花| 耳朵痒用什么药最有效| 地龙是什么东西| 入睡困难吃什么中成药| 什么是姑息治疗| 什么样的升旗仪式| 秋天是什么样子的| 口臭是什么引起的| 阁老是什么意思| 甲状旁腺分泌什么激素| 心慌是什么症状| 最大的罩杯是什么杯| tt什么意思| 烊化兑服是什么意思| 白介素8升高说明什么| 去医院打耳洞挂什么科| 红肠是什么| 享受低保需要什么条件| 牙疼是什么原因引起的| 白细胞2加号什么意思| 德艺双馨是什么意思| 做b超憋尿要憋到什么程度| 书记处书记是什么级别| 什么的雾| 孕妇梦见小蛇是什么意思| 啤酒对身体有什么好处| 娇气是什么意思| 10.16是什么星座| 尿液带血什么原因| 尿道口长肉芽是什么| 胆汁是什么| 井柏然原名叫什么| 望闻问切是什么意思| 低钾是什么原因造成的| 海蜇丝是什么做的| 叶凡为什么找石昊求救| 鼠的三合生肖是什么| 促进钙吸收吃什么| 冰箱双变频是什么意思| 73年属什么生肖| 弥月之喜是什么意思| 孔雀鱼吃什么| 正局级什么级别| 心脏做造影是什么意思| 五级士官是什么级别| 澳大利亚有什么特产| 杨花是什么| 可卡因是什么| karen是什么意思| 湿度大对人体有什么影响| 内分泌紊乱吃什么药| 购置是什么意思| 小便频繁是什么原因| 你会不会突然的出现是什么歌| 胎次是什么意思| 莓茶是什么茶| 胃酸烧心吃什么药可以根治| 区法院院长是什么级别| 来龙去脉指什么生肖| 戳什么意思| 水瓶女喜欢什么样的男生| 梅毒是什么| molly是什么意思| 日本豆腐是用什么做的| 肚脐左边是什么器官| 子宫有积液是什么原因引起的| 起死回生是什么生肖| 8月3日是什么日子| 一什么蔷薇| 胃在什么位置图片| 杨桃是什么季节的水果| 8月28日什么星座| 错过是什么意思| 高半胱氨酸是什么意思| 洛阳有什么好吃的| 姓傅的男孩取什么名字| 天王表属于什么档次| 55年出生属什么| 心大是什么意思| 半元音是什么意思| 激动的什么| 气血亏虚吃什么中成药| 息肌丸是什么| 小孩老是咬手指甲是什么原因| 锋芒毕露是什么意思| 无能为力是什么意思| 西瓜和什么榨汁好喝| 小朋友流鼻血是什么原因| 磨平了棱角是什么意思| 梦见家被偷了什么预兆| 证过二是什么意思| 五险一金指什么| 一般什么原因做宫腔镜| 人体缺钾会有什么症状| 贪恋是什么意思| 过敏是什么样的图片| 一什么清风| 白色的玉是什么玉| 农历十月十八是什么星座| 嗓子痒控制不住咳嗽是什么原因| 梦见黄金是什么意思| 什么病不能吃西洋参| 眼睛干痒用什么眼药水比较好| chihiro是什么意思| 一字马是什么意思| 王玉是什么字| 多吃蔬菜对身体有什么好处| 什么是神经性皮炎| 扬字五行属什么| mcm牌子属于什么档次| 灰指甲长什么样| 尿毒清颗粒主治什么病| 睡觉打嗝是什么原因| 继续近义词是什么| 好汉不吃眼前亏是什么意思| 系带是什么| 什么什么不得| 血液感染是什么病严重吗| 吃斋是什么意思| 酸梅汤不适合什么人喝| 尿特别黄是什么原因| 气血不足是什么症状| 脸颊两侧长斑是什么原因怎么调理| 仓鼠吃什么东西| 结石是什么原因引起的| 鹤立鸡群代表什么生肖| 血压低是什么症状| 三角形为什么具有稳定性| 什么叫环比| 左下腹疼痛挂什么科| 牙齿上有黄斑是什么原因| 水痘挂什么科| 带下病是什么病| 头发干燥是什么原因| dm医学上是什么意思| 行政助理是干什么的| 植物园有什么植物| 霸王龙吃什么| 脚面疼是什么原因引起的| ur是什么牌子| 2019是什么生肖| 8月2号是什么星座| 吃生姜对身体有什么好处| 分泌性中耳炎吃什么药| 吃什么能排出胆结石| 宫内囊性回声代表什么| 宝宝细菌感染吃什么药| 什么的猫| 槟榔是什么| 二脚趾比大脚趾长代表什么| 6月底是什么星座| 月球是地球的什么| 中期唐氏筛查查什么| 画皮是什么意思| 五行木生什么| 司命星君掌管什么| 喜大普奔是什么意思| 什么原因导致宫外孕| 热量是什么意思| 一什么棉花糖| 飞蓬草有什么功效| 什么叫腔梗| 看见蝙蝠有什么预兆| 脚背麻木是什么原因| 朗朗原名叫什么| 胎动频繁到什么程度说明缺氧| 精梳棉是什么面料| 阿斯伯格综合症是什么| 全身骨头疼是什么原因| 海燕是什么鸟| 什么叫精索静脉曲张啊| 女人手心热吃什么药好| whan是什么意思| 吃什么放屁多| 降火吃什么| ac是胎儿的什么| 维生素e和维生素c一起吃有什么效果| p图是什么意思| 咳嗽有白痰吃什么药好| 乔迁送什么礼物| 恶魔是什么意思| 什么叫hp感染| 鱼什么而什么| 高血压吃什么药好| 轻奢是什么意思| 两胸中间疼是什么原因| 擦什么能阻止毛发生长| 缩量横盘意味着什么| 佛是什么| bp在医学上是什么意思| 为什么生理期不能拔牙| 浓鼻涕吃什么药| 经期不能吃什么| 保税仓是什么意思| 任劳任怨是什么生肖| 前列腺彩超能查出什么| 什么原因导致高血压| 饭后烧心是什么原因引起的| 花洒不出水什么原因| 嗫嚅是什么意思| 吃什么上火| 得意忘形是什么意思| 壁立千仞无欲则刚是什么意思| 什么情况属于诈骗| 豚鼠吃什么食物| 盂是什么意思| midea是什么牌子| 湿热便秘吃什么中成药| 阿奇霉素是什么药| 睚眦欲裂什么意思| 三伏天从什么时候开始| 冒虚汗是什么原因| 百度跳转到内容

波兰孔院举行首届“长城杯”大学生汉语知识竞赛

本页使用了标题或全文手工转换
维基百科,自由的百科全书
.NET框架
.NET框架的组件堆栈
.NET框架的组件堆栈
开发者Microsoft
首次发布2025-08-05,?23年前?(2025-08-05
当前版本4.8.1(2025-08-05,?2年前?(2025-08-05
操作系统Windows 98或更新
Windows NT 4.0或更新
类型软件框架
许可协议专有软件
FCL英语Framework Class Library采用微软Ms-RSL共享源代码许可[1]
部分采取MIT许可证[2][3]
网站www.microsoft.com/net
百度 怎么办?JP·摩根想了个办法,他让摩根银行大量购买Selfridge的股票,然后再把自己手中的Selfridge股票打包成股权存托凭证向美国投资者出售,同时说服纽约股票交易所允许这种股权存托凭证上市交易,这就是最早的所谓美国存托凭证AmericanDepositaryReceipt,英文缩写的简称为ADR。

.NET框架(英語:.NET Framework)是由微软开发,一个致力于敏捷软件开发(agile software development)、快速应用开发(rapid application development)、平台无关性网络透明化软件框架。.NET是微软为2000年代对服务器桌面型软件工程迈出的第一步。.NET包含许多有助于互联网内部网应用迅捷发的技术。

.NET框架是微软公司继Windows DNA之后的新发平台,采用系统虚拟机运行,以通用语言运行库(Common Language Runtime)为基础,支持多种语言(C#F#VB.NETC++Python等)的开发。

.NET也为应用程序接口(API)提供了新功能和发工具。这些革新使得程序设计员可以同时进行Windows应用软件网络应用软件以及组件和服务(web服务)的开发。.NET提供了一个新的反射性的面向对象编程编程接口。.NET设计得足够通用化从而使许多不同高阶语言都得以被汇集

甲骨文公司Java编程语言Java平台企业版技术是.NET平台的竞争对手之一。

2025-08-05,微软宣布完全开放.NET框架的源代码,并提供给Linux和macOS使用。[4] 微软于2019年4月发布了该框架作为专有软件的最后一个主要版本 .NET框架 4.8,随后于 2022年8月发布了 4.8.1。从此之后便只有安全性或是稳定性的臭虫修复更新,亦无后续版本改动的项目。.NET框架 4.8将会持续包含在Windows的更新中接收安全性更新,截至2023年11月为止,并无将其移除的项目。[5]官方推荐后续的新开发改用 .Net 6 起的版本进行开发。[6]

版本

[编辑]
.NET框架版本历史一览
版本 通用语言运行库 发布时间 随同Visual Studio分发 预安装于Windows 包含之前版本
客户端版 服务器版
1.0[0] 1.0 2025-08-05 .NET 不适用 不适用 不适用
1.1 1.1 2025-08-05 .NET 2003 不适用 2003
2.0 2.0 2025-08-05 2005 不适用 2003 R2
3.0 2025-08-05 不适用 Vista 不适用 2.0
3.5 3.5 2025-08-05 2008 不适用 不适用 3.0 SP1 (2.0 SP1)
3.5.1 2025-08-05 不适用 不适用 2008
3.5 SP1 2025-08-05 2008 SP1 不适用 不适用 3.0 SP2 (2.0 SP2)
3.5.1 SP1 2025-08-05 不适用 7 2008 R2
4 4.0 4.0 2025-08-05 2010 不适用 不适用 不适用
(置位更新)
4.5 2025-08-05 2012 8 2012
4.5.1 2025-08-05 2013 8.1 2012 R2
4.5.2 2025-08-05 不适用 不适用 不适用
4.6 2025-08-05 2015 10 不适用
4.6.1 2025-08-05 2015 Update 1 10 v1511 不适用
4.6.2 2025-08-05 不适用 10 v1607 2016
4.7 2025-08-05 2017 v15.3 10 v1703 不适用
4.7.1 2025-08-05 2017 v15.5 10 v1709 v1709
4.7.2 2025-08-05 2019 10 v1803 v1803
4.8 2025-08-05 不适用 10 v1909 v1909
4.8.1 2025-08-05
平台支持信息一览
版本 指令集架构 Windows版本
个人电脑 Windows Server
1.0 IA-32 98, ME, NT 4.0 SP6a, 2000, XP NT 4.0 SP6a, 2000
1.1 IA-32[1] NT 4.0 SP6a, 2000, XP,Vista NT 4.0 SP6a, 2000, 2003, 2008
2.0 ~ 3.5 IA-32, Itanium, x86-64 XP, Vista, 7, 8, 8.1, 10 2003, 2003 R2, 2008, 2008 R2, 2012, 2012 R2, 2016, 2019
4.0 IA-32, Itanium[2],x86-64 XP SP3, Vista SP1, 7, 8, 8.1, 10 2003 SP2, 2003 R2 SP2, 2008, 2008 R2, 2012, 2012 R2, 2016, 2019
4.5[3] ~ 4.6 IA-32, x86-64 Vista SP2, 7 SP1, 8, 8.1, 10 2008 SP2, 2008 R2 SP1, 2012, 2012 R2, 2016, 2019
4.6.1 7 SP1, 8, 8.1, 10 2008 R2 SP1, 2012, 2012 R2, 2016, 2019
4.6.2 ~ 4.8 7 SP1, 8.1, 10 v1607起
4.8.1 IA-32, x86-64, ARM64 10 v20H2-v21H2, 11 v21H2 2022

0.^ 自SP1起所有Windows XP分发光盘或镜像中均包含1.0版的安装包,并且这个版本作为Windows XP Tablet PC和Media Center版的必要组成元素。
1.^ .Net Framework 1.1 可以部署于Itanium和x86-64平台, 由WOW64支持。
2.^ 在Itanium平台上有些功能不被支持,比如WPF。
3.^ 从版本4.5起,随同Windows RT, Windows RT 8.1运用于ARM v7平台,由于是精简版,未列于此表。

发行历史

[编辑]

.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应用程序的代码安全访问功能。
  • 内置了对ODBCOracle数据库的支持。这在1.0版本是以附加功能方式实现的,现在已经集成到框架的内部。
  • .NET Compact Framework- 这是一个用于智能设备(例如Pocket PC或者SmartPhone)的.NET框架的子集。
  • IPv6的支持。
  • 大量的API变更[7]

.NET框架 2.0

[编辑]

完整版号 - 2.0.50727.42,发行于2025-08-05。

.NET框架 2.0的组件都包含在 Visual Studio 2005和SQL Server 2005里面。通过MSDN Universe版可以免费下载RTM版本。

自1.1版本以来的改进:

  • 大量的API变更[7]
  • 新的API让需要管理.NET运行库实例的非.NET的应用程序可以做到这点。这个新的API对.NET运行库的各种功能,包括:多线程、存储器分配、代码加载等[8],提供了很好的控制。它最初是为Microsoft SQL Server能够有效率的使用.NET运行库而设计的,因为Microsoft SQL Server拥有它自己的日程管理器和存储器管理器。

.NET框架 3.0

[编辑]

发布日期2006/11/21。曾用名“WinFX”。依然使用.NET框架 2.0版本的公共语言运行库(CLR),并加入了适应未来软件发展方向的4个框架:

.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 ObjectLINQ to ADO.NET以及LINQ to XML
  • 表达式目录树(Expression Tree),用于为Lambda表达式提供支持
  • 与语言集成查询(LINQ)和数据感知紧密集成。借助这个新功能,您可以使用相同的语法,在任何支持LINQ的语言中编写相关代码,以筛选和枚举多种类型的SQL数据、集合、XML和数据集,以及创建它们的投影。
  • 利用ASP.NET AJAX可以创建更有效、更具交互性、高度个性化的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。该版本随Visual Studio 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主要增加了并行支持,英文版于2025-08-05推出。[9]
  • 新增System.Lazy <T>,做为延迟初始化时使用。[10]
  • 新增大整数的System.Numerics.BigInteger[11]与复数的System.Numerics.Complex[12](使用时需加入参考System.Numerics.dll)
  • 微软于2016年1月12开始停止对.NET 4.0, 4.5, 4.5.1的安全性更新及技术支持

.NET框架 4.5

[编辑]

.NET框架 4.5是.NET框架 4高兼容性的置位更新(in-place update)。搭配C# 或Visual Basic程序设计语言使用.NET框架 4.5,即可编写Windows Store风格的应用程序。.NET框架 4.5可提升性能、可靠度及安全性。于2025-08-05推出。但请注意,.NET框架 4.5只支持Windows Vista SP2以上版本的操作系统。[13]

  • 微软于2016年1月12开始停止对.NET 4.0, 4.5, 4.5.1的安全性更新及技术支持

.NET框架 4.5.1

[编辑]

.NET框架 4.5.1于2025-08-05随着Visual Studio 2013发布。[14]此版本需要Windows Vista SP2或更新的环境,[15]并且包含在Windows 8.1和Windows Server 2012 R2中。.NET框架 4.5.1的新功能有:[16]

  • 调试器支持X64编辑和继续(EnC)
  • 调试器支持查看托管返回值
  • “Call Stack”和“Task”窗口中的异步感知调试
  • 调试器支持分析.NET内存转储(在Visual Studio Ultimate SKU中)
  • 适用于Performance 及 Diagnostics中心的.NET开发者工具
  • 代码分析UI改进
  • ADO.NET空闲连接弹性

.NET框架 4.5.2

[编辑]

.NET框架 4.5.2的发表宣布于2025-08-05。[17]此版本需要Windows Vista SP2及更新版本。[18]对于Windows Forms应用程序,对高DPI方案进行了改进。对于ASP.NET,可以使用更高可靠性的HTTP开头检查和修改方法,这是一种规划背景异步工作任务的新方法。[17]

.NET框架 4.6

[编辑]

.NET框架 4.6 是在2014年11月12月宣布,[19]而在2025-08-05发行。[20] 它对64位系统支持一个新的即时编译(JIT),称之为 RyuJIT,呈现较佳的性能,并支持SSE2AVX2指令集。WPF 与 Windows Forms 都获得更新以达成较高的 DPI 情境。支持TLS 1.1 与 TLS 1.2 的功能已经被加入 WCF。[20] 此版本需要Windows Vista SP2 或更新的版本。[21]

.NET框架 4.6.1

[编辑]

.NET框架 4.6.1 发行的消息在2025-08-05宣布。[22]这个版本需要 Windows 7 SP1 或更新的版本。[21]新的功能与 API 包括:

  • WPF改进了拼写检查,支持用户自定义词典,并改进触控性能。
  • 增强支持椭圆曲线数字签名算法(ECDSA)X509 认证。
  • 当连接Azure SQL数据库时,添加了对AlwaysOn、Always Encrypted的SQL连接,并改进连接开放弹性。
  • Azure SQL数据库现在使用更新的System.Transactions API支持分布式处理。
  • RyuJIT、GC、WPF和WCF中的许多其他性能、稳定性和可靠性相关修复。

.NET框架 4.6.2

[编辑]

.NET框架 4.6.2 的预览在2025-08-05宣布,[23]发行日期则为2025-08-05。[24]此版本需要 Windows 7 SP1 或更新版。[21] New features include:

  • 支持超过260个字符的路径
  • 支持X.509认证的FIPS 186-3 DSA
  • TLS 1.1 / 1.2支持 ClickOnce
  • 支持 ASP.NET 数据注释的本地化
  • 激活具备 Project Centennial 的 .NET桌面应用程序
  • 针对WPF支持软键盘和每个显示器DPI

.NET框架 4.7

[编辑]

2025-08-05,微软宣布 .NET框架 4.7 将被集成到 Windows 10 創意者更新, 承诺为其他Windows版本提供独立安装程序。同日,发行一个 Visual Studio 2017 更新版以加强支持标的物 .NET框架 4.7。[25] 所承诺的 Windows 7 及更新版本独立安装程序在2025-08-05发行,[26] 但有一些重要成分不包含在内。[27]

.NET框架 4.7 的新功能包括:[28]

  • 使用椭圆曲线密码学的增强加密
  • 改进对传输层安全性协议(TLS)的支持,尤其是对于1.2版
  • 支持Windows Forms 的高DPI感知支持
  • 在 WPF 中对触控和手写的更多支持
  • WPF 的新印表 API

.NET框架 4.7.1

[编辑]

.NET框架 4.7.1 在2025-08-05发行。[29]在修复程序和新功能中,它修正了d3dcompiler依赖性问题。 [30]它还增加了与.NET Standard 2.0开箱即用的兼容性。[31]

.NET框架 4.7.2

[编辑]

.NET框架 4.7.2 在2025-08-05发行。[32]主要的异动是改进 ASP.NET、BCL、CLR、ClickOnce、Networking、SQL、WCF、Windows Forms、Workflow 及 WPF。[33]

CLR与CLI

[编辑]
CLI运作图

.NET的初级组成是CLI(通用语言架构)和CLR(通用语言运行库)。

CLI(通用语言架构)全名为Common Language Infrastructure,是一套运作环境规范,包括一般系统、基础类库和与机器无关的中间代码。CLR则是确认操作密码符合CLI的平台。在通用中间语言(CIL)执行前,CLR必须将指令及时编译转换成原始机器代码

所有CLI都可经由.NET自我表述。CLR检查元数据以确保正确的方法被调用。元数据通常是由语言编译器生成的,但开发人员也可以通过使用客户属性创建他们自己的元数据。

如果一种语言实现生成了CLI,它也可以通过使用CLR被调用,这样它就可以与任何其他.NET语言生成的资料相交互。CLR也被设计为操作系统无关性。

当一个汇编体被加载时,CLR执行各种各样的测试。其中的两个测试是确认与核查。在确认的时候,CLR检查汇编体是否包含有效的元数据和CIL,并且检查内部表的正确性。核查则不那么精确。核查机制检查代码是否会执行一些“不安全”的操作。核查所使用的算法非常保守,导致有时一些“安全”的代码也通不过核查。不安全的代码只有在汇编体拥有“跳过核查”许可的情况下才会被执行,通常这意味着代码是安装在本地上的。

通过.NET,你可以用SOAP和不同的web服务进行交互。

标准化和著作权

[编辑]

2000年8月,微软惠普英特尔共同制定CLIC#编程语言的标准规格。2001年12月,以上两者通过并成为ECMA标准规格。(ECMA 335页面存档备份,存于互联网档案馆)和ECMA 334页面存档备份,存于互联网档案馆))。ISO亦于2003年4月跟随(ISO/IEC 23271页面存档备份,存于互联网档案馆)和ISO/IEC 23270页面存档备份,存于互联网档案馆))。

这会有一定的风险,但它可以鼓励标准联合的实现,以提供一座桥梁来把非Windows的软件转变为微软.NET。将此推广为标准的一个团体是国际.NET联合会(INETA)。

尽管微软及其他合作伙伴持有CLI及C#的专利,ECMA和ISO要求所有专利都应该遵守“合理与非歧视准则”。除此之外,这些公司亦同意让用户免费使用这两项专利。

不过,这并不包括.NET框架内并不为ECMA/ISO标准涵盖的范围,这包括了:Windows FormsADO.NETASP.NET。微软对上述部件所持有的专利,使开发者未必能够为非微软平台开发出一套完整的作品。

2014 年11月13日,微软新任首席执行官萨帝亚·纳德拉决心下,该公司发布的.NET源代码包含了服务器部分的核心,如.NET Framework Libraries.NET Core Framework LibrariesRyuJit VM,正式对外开放源代码[34]

.NET与Java EE

[编辑]

公共语言基础(CLI),通用中间语言(CIL)以及C#与甲骨文公司的Java虚拟机和Java之间有不少的相似之处,因此它们无疑是强烈的竞争者。它们两者都使用它们各自的中间码(在微软,它们叫做通用中间语言,而在Oracle,它们叫字节码)。通用中间语言被设计来即时编译(JIT),而Java的字节码在最初的时候则是设计成用于解释运行,而非即时编译。.NET现在只在Windows上被完美地支持,而Java则可在很多平台上被完好支持。然而,现在一些正在开发中的实现版本例如Mono或者Shared source CLI英语Shared Source Common Language Infrastructure可以用于在类Unix操作系统例如LinuxFreeBSDMac OS X上运行.NET应用程序。甲骨文公司的一个产品,J2EE提供与微软的一些捆绑于Windows中的技术例如COM+(先前的MTS)和MSMQ等效的功能。

Java和.NET可经由IKVM英语IKVM,一个在.NET平台上实现的Java虚拟机作更多的沟通。

Java有其专门的远程程序调用技术RMI(Remote Method Invocation), RMI的另一版本RMI-IIOP英语RMI-IIOP更可兼容CORBA

然而,.NET与Java之间的竞争关系,在.NET Core出现后,一切都改观了。

.NET与COM

[编辑]

前一版软件组件技术由Microsoft所提出的COM,该技术被用来创建大型(large-scale)的软件系统上,使用COM+ 或MTS对于传统分布式组件有强化的作用。当.NET将COM-objects封装成.NET组件以及将.NET组件封装成COM-objects后,Microsoft分别将他命名为Runtime Callable Wrapper(RCW)和COM Callable Wrapper(CCW)。很明显的,Microsoft最终将以.NET全面取代COM成为软件组件的架构。[来源请求]Microsoft希望开发者能够在Win32平台上使用.Net取代COM,而已经存在的服务则透过抽象接口来使用(如:目前交易的.Net组件仍然使用COM+)。

.Net Remoting与XML WebServices

[编辑]

.NET remoting属于行程(process)内沟通的抽象方法。

Microsoft? .NET Remoting提供一个丰富可扩展的框架给存在两个不同AppDomain中的Object,使得在不同行程(行程)和不同机器中能够进行无缝地沟通。.NET Remoting提供一种强大但简单的可编程模型并且在执行阶段支持资料交换。

XML Web services将基础的功能区块布署到网络的不同电脑上。开放标准的通信协议以及人和应用程序可以透过Web Services集成应用程序的环境来合作。应用程序可以从不同的来源使用多个XML Web Services来建构应用程序而不需要知道他们在哪里以及如何来运作。

.NET的语言

[编辑]

CLI被设计成支持任何面向对象的编程语言,分享共同对象模型与大型共同类别库。.NET支持超过40种编程语言。这些编译器大都是免费的(软件厂商仅开发出售集成开发环境)。

大部分的语言都做了重大改变以搭配.NET框架。厂商通常利用这个机会来同时改变语言的其他特性。

微软开发的.NET平台编程语言

[编辑]

第三方使用.NET的编程语言

[编辑]

ASP.NET & ADO.NET

[编辑]

ASP.NET是内含于.NET框架中,专门用来发展Web应用程序的一组类别库集。

ADO.NET是内含于.NET框架中,专门处理与资料来源沟通的资料访问类别库集,被Windows FormsASP.NET应用程序大量使用,可说是.NET框架中唯一的资料访问接口。

可供选择的实现版本

[编辑]

微软的.NET框架是.NET技术的旗舰级实现版本,在此之外还有一些其他实现版本。

  • Mono是一个开源的.NET运行时和开发库实现版本。Mono现正由xamarin公司和开源软件发展社区负责开发。它正迅速发展成熟,现已经包含了对ASP.NET和ADO.NET的支持,对Windows Forms库的支持也较充分。它提供了一个C#编译器,而一个VB.NET编译器现在也已经处于pre-beta阶段。Mono项目还包含了一些新的库和技术的开发:
    • Gtk:一个GTK+GUI工具包的.NET封装。
    • xSP:一个用C#编写的支持运行ASP.NET应用程序的网页服务器软件。
    • MonoDevelopSharpDevelop的一个移植版本,是一个符合GPL标准的面向Gtk#和Mono的.NET集成开发环境。
    • Novell.Directory.Ldap类库:Lightweight Directory Access Protocol(LDAP)for .NET的一个免费的实现版本。
    • SerialPortNet:Aserial portlibrary for .Net & Mono implementing .NET 2.0 specifications.
    • Mono for AndroidMonoTouch for iOS:Mono在移动平台Android和iOS上的移植,使开发者可以在Android和iOS平台上使用C#和Mono框架开发应用。Xamarin Forms是这些实现的核心,可以根据系统不同生成符合该系统风格的界面。
    • MonoMac:Mono对于一些OS X原生Step API的封装。

参见

[编辑]

参考文献

[编辑]
  1. ^ Scott Guthrie. Releasing the Source Code for the NET Framework. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  2. ^ .NET Core is Open Source. .NET框架 Blog. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  3. ^ Foley, Mary Jo. Microsoft to open source more of .NET, and bring it to Linux, Mac OS X. ZDNet. [2025-08-05]. (原始内容存档于2025-08-05). 
  4. ^ Announcing Open Source of .NET Core Framework, .NET Core Distribution for Linux/OSX, and Free Visual Studio Community Edition. microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  5. ^ gewarren. .NET Framework & Windows OS versions. Microsoft Learn. [2025-08-05]. (原始内容存档于2025-08-05) (美国英语). 
  6. ^ .NET Framework & Windows OS versions. Microsoft Learn. [2025-08-05]. (原始内容存档于2025-08-05) (美国英语). 
  7. ^ 7.0 7.1 API Changes between versions of the .NET Framework. GotDotNet. [2025-08-05]. (原始内容存档于2025-08-05). 
  8. ^ Hosting Interfaces for .NET Framework version 2.0. winfx.msdn.microsoft.com. [2025-08-05]. (原始内容存档于2025-08-05). 
  9. ^ What's New in the .NET Framework 4. MSDN Library. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  10. ^ Lazy<T> Class. MSDN Library. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  11. ^ BigInteger Structure. MSDN Library. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  12. ^ Complex Structure. MSDN Library. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  13. ^ Download Microsoft .NET Framework 4.5 from Official Microsoft Download Center. microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  14. ^ .NET Framework 4.5.1 RTM => start coding. .NET框架 Blog. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  15. ^ Microsoft .NET Framework 4.5.1 (Offline Installer). Download Center. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  16. ^ .NET Framework 4.5.1 RTM => start coding. MSDN Blogs. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  17. ^ 17.0 17.1 Announcing the .NET Framework 4.5.2. MSDN Blogs. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  18. ^ Microsoft .NET Framework 4.5.2 (Offline Installer). Download Center. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  19. ^ .NET Team. Announcing .NET 2015 Preview: A New Era for .NET. [2025-08-05]. (原始内容存档于2025-08-05). 
  20. ^ 20.0 20.1 Lander, Rich. Announcing .NET Framework 4.6. .NET Blog. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). The team is updating the System.Security.Cryptography APIs to support the Windows CNG cryptography APIs [...] since it supports modern cryptography algorithms [Suite B Support], which are important for certain categories of apps. 
  21. ^ 21.0 21.1 21.2 .NET Framework System Requirements. MSDN. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  22. ^ .NET Framework 4.6.1 is now available!. MSDN Blogs. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  23. ^ Announcing the .NET Framework 4.6.2 Preview. .NET Blog. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  24. ^ Announcing .NET Framework 4.6.2. .NET Blog. Microsoft. [2025-08-05]. (原始内容存档于2025-08-05). 
  25. ^ Lander, Rich. Announcing the .NET Framework 4.7. .NET Blog. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  26. ^ Microsoft .NET Framework 4.7 (Offline Installer). Download Center. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  27. ^ The .NET Framework 4.7 installation is blocked on Windows 7, Windows Server 2008 R2 and Windows Server 2012 because of a missing d3dcompiler update. Support. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  28. ^ What's New in the .NET Framework. docs.microsoft.com. Microsoft. [2025-08-05]. 
  29. ^ Krishna, Preeti. Announcing the .NET Framework 4.7.1. .NET Blog. Microsoft. 2025-08-05 [2025-08-05]. (原始内容存档于2025-08-05). 
  30. ^ Announcing the .NET Framework 4.7.1. microsoft.com. [2025-08-05]. (原始内容存档于2025-08-05). 
  31. ^ Immo Landwerth, .NET Standard - .NET Framework 4.7.1, 2025-08-05 [2025-08-05], (原始内容存档于2025-08-05) 
  32. ^ Announcing the .NET Framework 4.7.2. [2025-08-05]. (原始内容存档于2025-08-05) (美国英语). 
  33. ^ What's new in the .NET Framework. microsoft.com. [2025-08-05]. (原始内容存档于2025-08-05). 
  34. ^ 微软果然走向开放,.NET 开放源代码可望开发 Linux 与 OS X 软件页面存档备份,存于互联网档案馆),TechNews 科技新报,2025-08-05

外部链接

[编辑]
己亥是什么意思 小猫吃什么食物 皮肤黑的人穿什么颜色的衣服好看 眼仁发黄是什么原因 口是什么感觉
阴道什么样 腔隙性脑梗死吃什么药 猫发出咕噜咕噜的声音是什么意思 免疫组化是什么意思 经方是什么意思
情难自禁是什么意思 西瓜不可以和什么同食 有伤口吃什么消炎药 月办念什么 刮痧用的油是什么油
手指脱皮是什么原因 断奶吃什么 结缔组织病是什么病能治愈吗 激素是什么意思 宿醉什么意思
黑加仑是什么水果hcv8jop1ns5r.cn 酒精和碘伏有什么区别hcv7jop9ns0r.cn 2005属什么生肖hcv9jop1ns2r.cn 喝什么茶不影响睡眠hcv8jop5ns5r.cn 哺乳期不能吃什么hcv8jop4ns6r.cn
anode是什么意思hcv8jop3ns7r.cn 过敏性鼻炎用什么药效果最好hcv9jop3ns0r.cn 梦见马是什么意思adwl56.com 什么叫数字货币hcv9jop2ns4r.cn 四平八稳是什么意思hcv8jop0ns1r.cn
4月5日什么星座hcv7jop6ns7r.cn 祥林嫂是什么样的人hcv7jop9ns9r.cn 有什么有什么hcv8jop0ns3r.cn 副科级是什么级别hcv8jop6ns0r.cn 英红九号红茶什么档次hcv8jop0ns8r.cn
红细胞高什么原因hcv8jop1ns3r.cn 网络cp是什么意思luyiluode.com 牡丹什么时候开hcv8jop7ns1r.cn 囊胚和冻胚有什么区别hcv7jop6ns9r.cn 世袭罔替是什么意思520myf.com
百度