最近被.NET平台各种名词、以及各种版本弄得有些疑惑,开发和部署,对于开发平台版本选择是个基本问题,因此,花了些时间,学习汇总了有关.NET版本演进的历史。

.NET简介

这个平台相信我们都知道,不过随着技术发展,现在的.NET平台也今非昔比。

.NET平台类似Java平台,是微软于2000年推出的Windows操作系统的应用软件开发框架,发展至今形成巨大的技术栈,涉及多语言(支持C#、F#、VB.NET)多领域(Windows桌面软件、Web应用、移动开发等)软件开发,随着2014年,微软宣布.NET开源,支持Linux等平台,和Java平台一样实现了跨平台。

.NET平台技术关键词:

  • .NET Core:.NET跨平台实现,支持Linux平台运行;
  • C#、F#、VB:.NET平台支持的开发语言
  • .NET Framework:.NET平台的Windows实现,提供公共语言运行时(类似虚拟机)和类库;
  • ASP.NET:Windows下互联网web应用开发框架;
  • Xamarin:跨平台移动开发框架,支持Android、iOS;
  • Azure:微软云平台解决方案,支持云平台应用开发和部署;
  • Roslyn:C# 和 Visual Basic语言编译器,F#有单独的编译器;

.NET Framework 版本相关问题

  • .NET Framework是.NET应用(包括Web、Windows、Phone、Server、Azure等)运行和开发的基础,主要包括公共语言运行时(CLR,类似虚拟机)和.NET Framework类库,提供内存管理、类型和内存安全、安全性、网络和应用部署服务,在Windows操作系统上抽象提供易于使用的数据结构和API,在其上支持C#、F#和VB多种语言开发;

  • .NET Framework新版本包含旧版本功能并增加特性,但CLR(公共语言运行时)具有自己独立的版本号,因此,.NET Framework发布新版本时,CLR版本号仍可能保持不变。例如.NET Framework 4,4.5,4.6,4.7都是包含CLR 4, .NET Framework 2.0,3.0,3.5包含CLR 2.0版本,注意CLR 3.0没有该版本号;

  • 程序编译目标程序集版本要求为4.5.1,当前计算机上只有4.5版本时,该程序被阻止运行,提醒用户下载.NET Framework 4.5.1版本安装;程序编译目标为版本4的,可以在4以上版本运行;高版本的程序不能在低版本的.NET Framework上运行;

  • .NET Framework 4 开始采用新升级方式(理解是全量独立的程序包),支持Side-by-side 并排运行多个版本的组件和CLR,多个应用部署在同一台计算机可以各自选择特定版本的 NET Framework 运行, .NET 4之前的2.0,3.0,3.5采用增量升级方式,新版本建立在旧版本上,是一种分层的概念,例如同一台计算机上安装3.5时,会自动安装2.0层、3.0层、3.5层,此时面向2.0,3.0.3.5的所有程序集只能运行在3.5版本上,2.0程序集无法选择运行在2.0层;默认情况下,.net 2.0程序无法直接在.net 4.0上运行,须要安装.net 2.0或者3.0,3.5框架;


.NET Framework 版本历史

  • MSDN中历史版本表格,介绍了特性和支持的操作系统,但是没有版本发布和支持时间。官方介绍地址
  • 维基百科,介绍的很全面,这里附上表格和链接

注意:

  • 操作系统支持一列中+号表示要自行安装,没有+号表示内部自带**
  • 向下兼容运行理解:2.0版本的程序可以在.net framwork 2.0,3.0,3.5上运行;4.0的程序可以在4.5,4.5.1,4.5.2,4.6,4.6.1+上运行;
版本号 CLR版本 发布时间 服务截止时间 开发工具版本 桌面操作系统支持 服务器操作系统支持 向下兼容运行
1.0 1.0 2002-02-13 2009-07-14 Visual Studio .NET XP[可安装] N/A N/A
1.1 1.1 2003-04-24 Visual Studio .NET 2003 N/A 2003 1.0
2.0 2.0 2005-11-07 2011-07-12 Visual Studio 2005 N/A 2003, 2003 R2,2008 SP2, 2008 R2 SP1 N/A
3.0 2.0 2006-11-06 2011-07-12 Expression Blend Vista 2008 SP2, 2008 R2 SP1 2.0
3.5 2.0 2007-11-19 2011-07-12 Visual Studio 2008 7, 8+, 8.1+, 10+ 2008 R2 SP1 2.0, 3.0
4.0 4 2010-04-12 2016-01-12 Visual Studio 2010 N/A N/A N/A
4.5 4 2012-08-15 2016-01-12 Visual Studio 2012 8 2012 4.0
4.5.1 4 2013-10-17 2016-01-12 Visual Studio 2013 8.1 2012 R2 4.0, 4.5
4.5.2 4 2014-05-05 N/A N/A N/A N/A 4.0–4.5.1
4.6 4 2015-07-20 N/A Visual Studio 2015 10 N/A 4.0–4.5.2
4.6.1 4 2015-11-30 N/A Visual Studio 2015 Update 1 10 v1511 N/A 4.0–4.6
4.6.2 4 2016-08-02 N/A   10 v1607 2016 4.0–4.6.1
4.7 4 2017-04-05 N/A Visual Studio 2017 10 v1703 N/A 4.0–4.6.2


出处:http://blog.csdn.net/MePlusPlus/article/details/76599313

搞懂.NET Framework 历史版本(2017年)的更多相关文章

  1. .NET Framework 历史版本(2017年)

    .NET简介 这个平台相信我们都知道,不过随着技术发展,现在的.NET平台也今非昔比. .NET平台类似Java平台,是微软于2000年推出的Windows操作系统的应用软件开发框架,发展至今形成巨大 ...

  2. 为什么说JAVA中要慎重使用继承 C# 语言历史版本特性(C# 1.0到C# 8.0汇总) SQL Server事务 事务日志 SQL Server 锁详解 软件架构之 23种设计模式 Oracle与Sqlserver:Order by NULL值介绍 asp.net MVC漏油配置总结

    为什么说JAVA中要慎重使用继承   这篇文章的主题并非鼓励不使用继承,而是仅从使用继承带来的问题出发,讨论继承机制不太好的地方,从而在使用时慎重选择,避开可能遇到的坑. JAVA中使用到继承就会有两 ...

  3. C# 语言历史版本特性(C# 1.0到C# 8.0汇总)

    历史版本 C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持.微软将C#提交给标准组织ECMA,C# 5.0目前是ECM ...

  4. C# 语言历史版本特性(C# 1.0到C# 7.1汇总更新)

    历史版本C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持.微软将C#提交给标准组织ECMA,C# 5.0目前是ECMA ...

  5. 不再混淆,一次搞懂!图解flexbox十余个属性

    原文首发于个人博客:不再混淆,一次搞懂!图解flexbox十余个属性 flexbox的发明简直是csser的一大福音,终于可以不再需要为垂直居中一个元素而绞尽脑汁了.同时它还能够实现弹性布局,可以说没 ...

  6. 彻底搞懂字符编码(unicode,mbcs,utf-8,utf-16,utf-32,big endian,little endian...)[转]

    最近有一些朋友常问我一些乱码的问题,和他们交流过程中,发现这个编码的相关知识还真是杂乱不堪,不少人对一些知识理解似乎也有些偏差,网上百度, google的内容,也有不少以讹传讹,根本就是错误的(例如说 ...

  7. 搞懂分布式技术12:分布式ID生成方案

    搞懂分布式技术12:分布式ID生成方案 ## 转自: 58沈剑 架构师之路 2017-06-25 一.需求缘起 几乎所有的业务系统,都有生成一个唯一记录标识的需求,例如: 消息标识:message-i ...

  8. C# 语言历史版本特性(C# 1.0到C# 7.1汇总更新) C#各版本新特性 C#版本和.NET版本以及VS版本的对应关系

    C# 语言历史版本特性(C# 1.0到C# 7.1汇总更新) 2017年08月06日 11:53:13 阅读数:6705 历史版本 C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有1 ...

  9. [转]C# 语言历史版本特性(C# 1.0到C# 8.0汇总)

    历史版本 C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持.微软将C#提交给标准组织ECMA,C# 5.0目前是ECM ...

随机推荐

  1. 6、Spring Cloud -熔断器Hystrix

    6.1.什么是Hystrix 在分布式系统中.服务与服务之间的依赖错综复杂,一种不可避免的情况就是某些服务 出现故障,导致依赖于它们的其他服务出现远程调度的线程阻塞.   Hystrix是Netfli ...

  2. 淡说Linux 的发展史

    ♦ 1  Linux的简单介绍 Linux与Windows一样都是一套OS(操作系统),Windows界面美观 ,普通用户很容易上手,点点鼠标就能搞定许多操作,而Linux生下来就是为程序员的,故精通 ...

  3. CentOS7图文安装教程

    CentOS 7下载: CentOS 7只提供64位版本,虽然有不少国内镜像节点,不过还是觉得通过BT下载是不错的选择.镜像大小6.7G,联通20M光纤下载,不到小时.以下是中国大陆的下载地址列表: ...

  4. PHP一个表单多个提交按钮解决方法

    1.html页面<注:多个按钮的name值必须相同> <form action="{:U('Index/index')}" method="post&q ...

  5. EF Core 2.0 已经支持自动生成父子关系表的实体

    现在我们在SQL Server数据库中有Person表如下: CREATE TABLE [dbo].[Person]( ,) NOT NULL, ) NULL, ) NULL, ) NULL, [Cr ...

  6. Linux-- 目录基本操作(2)

    cp 复制文件或目录 用法:cp [OPTION] SOURCE源文件 DIRECTORY目标文件,具体可以查看 man cp 以常用的参数举例 [root@hs-192-168-33-206 tom ...

  7. OC字符串处理

    接到一个需求, 现有多个品牌的商品,使用字符串保存已选中的品牌,使用','隔开,可以反选. 分析问题可知: 1. 字符串由多个品牌名字组成,由 ',' 隔开. 2.如果选中的品牌不在字符串内,则拼接到 ...

  8. 2019年,200道面试题打造最受企业欢迎的iOS程序猿!

    在2018年底,小编混迹在各种iOS交流群中,整理出了将近两百道大厂最喜欢在面试问到的问题,今天在这里分享给大家[免费获取方式在最后]!                           小编就不在 ...

  9. Java面试题整理2

    多线程部分 并行和并发的区别? 并行指两个或多个事件同一时刻发生:并发指两个或多个事件同一时间间隔发生. 并行是在不同实体上的多个事件,并发是在同一实体上的多个事件. 线程和进程的区别? 进程是程序运 ...

  10. laravel5.5源码笔记(一、入口应用的初始化)

    laravel的项目入口文件index.php如下 define('LARAVEL_START', microtime(true)); require __DIR__.'/../vendor/auto ...