本系列文章主要整理并介绍 C# 各版本的新增功能。

C# 8.0

C#8.0 于 2019年4月 随 .NET Framework 4.8 与 Visual Studio 2019 一同发布,但是当前处于预览状态。预计在2019年9月正式发布。

目前提供以下功能可供试用:

  • Readonly 成员
  • 默认接口成员【*重要,突破性的变革*】请参考:C#8.0 中使用默认接口成员更新接口
  • 模式匹配增强功能:Using 声明
    • Switch 表达式
    • 属性模式
    • 元组模式
    • 位置模式
  • 静态本地函数
  • 可处置的 ref 结构
  • 可为空引用类型
  • 异步流【*重要*
  • 索引和范围

具体新增功能请查看 C#8.0 新增功能

C# 7.3

C#7.3 随 VS2017 v15.7 发布(2018年5月)。  自 Visual Studio 2017 版本 15.7 和 .NET Core 2.1 SDK 起,开始随附 C# 7.3。

具体新增功能请查看 C#7.3 新增功能

C# 7.2

C#7.2 随 VS2017 v15.5 发布(2017年11月)。自 Visual Studio 2017 版本 15.5 和 .NET Core 2.0 SDK 起,开始随附 C# 7.2。

具体新增功能请查看 C#7.2 新增功能

C# 7.1

C#7.1 随 VS2017 v15.3 发布(2017年8月)。  自 Visual Studio 2017 版本 15.3 和 .NET Core 2.0 SDK 起,开始随附 C# 7.1。

具体新增功能请查看 C#7.1 新增功能

C# 7.0

C#7.0 于 2017年3月 随 .NET 4.7 和 VS2017 发布。

C# 7.0 向 C# 语言添加了许多新功能:具体请查看 C#7.0 新增功能

C# 6.0

C#6.0 在 2012 年7月随着.NET Framework 4.6 一同发布,后期发布了.NET Framework 4.6.1,4.6.2。
C# 在 3.0 版和 5.0 版对面向对象的语言添加了主要的新功能。 在 6.0 版中,它不再推出主导性的杀手锏,而是发布了很多使得 C# 编程更有效率的小功能。这些功能每一个都很有趣。 但从整体来看,可以发现一个有趣的模式。 在此版本中,C# 消除语言样本,让代码更简洁且更具可读性。 所以对喜欢简洁代码的用户来说,此语言版本非常成功。

具体功能请查看 C#6.0 新增功能

  除了发布此版本,他们还做了另一件事,虽然这件事本身与传统的语言功能无关。 他们发布了 Roslyn 编译器即服务。 C# 编译器现在是用 C# 编写的,你可以使用编译器作为编程工作的一部分。

C# 5.0

C#5.0 在 2012 年2月随着.NET Framework 4.5 一同发布,后期发布了.NET Framework 4.5.1,4.5.2。5.0 版是C#语言有针对性的一个版本。 对此版本中所做的几乎所有工作都归入另一个突破性语言概念:适用于异步编程的 async 和 await 模型。
 

C# 4.0

C# 4.0 版和 Visual Studio 2010 一起发布于 2010 年4月,对应 .NET Framework 4.0。C# 4.0 版很难达到 3.0 版的创新水平。 在 3.0 版中,C# 已经完全从 Java 的阴影中脱颖而出,崭露头角。 很快成为一种简洁精炼的语言。此版本引入了以下新功能:
 

C# 3.0

C# 3.0 版和 Visual Studio 2008 一起发布于 2007 年下半年,但完整的语言功能是在 .NET Framework 3.5 版中发布的。 此版本标示着 C# 发展过程中的重大更改。 C# 成为了真正强大的编程语言。

下面列出的功能中大多数似乎都是不可或缺,难以分割的。 它们的组合都是经过巧妙布局。 我们通常认为 C# 版本的杀手锏是查询表达式,也就是语言集成查询 (LINQ)。LINQ 的构造可以建立在更细微的视图检查表达式树、Lambda 表达式以及匿名类型的基础上。 不过无论如何 C# 3.0 都提出了革命性的概念。 C# 3.0 开始为 C# 转变为面向对象/函数式混合语言打下基础。

 

C# 2.0

微软于2005年11月发布了.NET Framework 2.0,同时发布了Visual Studio 2005,同步对应的C#升级到了2.0版本。

除现有功能以外的其他 C# 2.0 功能:

  • 方法组转换(委托)
  • 静态类
  • 委托推断

C# 1.2

随 Visual Studio 2003 一起提供的 C# 版本 1.2。 它对语言做了一些小改进。 最值得注意的是,从此版本开始,当 IEnumerator 实现 IDisposable 时,foreach 循环中生成的代码会在 IEnumerator 上调用 Dispose

C# 1.0

C# 1.0 的主要功能包括:

C# 与 .NET Framework 对应关系

下表中列出 C#、.NET、VS版本对应关系

C#版本

发布时间

.NET 版本

VS版本

CLR版本

C#1.0

2002-02-13

.NET Framework 1.0

VS.NET 2002

1.0

C#1.1
C#1.2

2003-04-24

.NET Framework 1.1

VS.NET 2003

1.1

C#2.0
C#3.0(除Linq)

2005-11-07

.NET Framework 2.0

VS2005

2.0

C#3.0(除Linq)

2006-11

.NET Framework 3.0

VS2008

2.0

C#3.0

2007-11-19

.NET Framework 3.5

VS2008

2.0

C#4.0

2010-4-12

.NET Framework 4.0

VS2010

4

C#5.0

2012-02-20

.NET Framework 4.5

VS2012

4

C#5.0

2013-10-17

.NET Framework 4.5.1

VS2013

4

C#5.0

2014-05-05

.NET Framework 4.5.2

VS2013

4

C#6.0

2015-07-26

.NET Framework 4.6

VS2015(v14)

4

C#6.0

2015-11-30

.NET Framework 4.6.1

VS2015(v14)

4

C#7.0

2016-08-02

.NET Framework 4.6.2

VS2017(v15)

4

C#7.1

2017-04-05

.NET Framework 4.7

VS2017(v15.3)

4

C#7.2

2017-10-17

.NET Framework 4.7.1

VS2017(v15.5)

4

C#7.3

2018-04-30

.NET Framework 4.7.2

VS2017(v15.7)

4

C#8.0

2019-04-18

.NET Framework 4.8

VS2019(v16)

4

 

转载自:https://www.cnblogs.com/SavionZhang/p/11229640.html

谢谢浏览!

【转】C#各版本新增加功能的更多相关文章

  1. C#各版本新增加功能

    本系列文章主要整理并介绍 C# 各版本的新增功能. C# 8.0 C#8.0 于 2019年4月 随 .NET Framework 4.8 与 Visual Studio 2019 一同发布,但是当前 ...

  2. Delphi 各版本新特性功能网址收集

    Delphi XE2 三个新功能介绍举例_西西软件资讯  http://www.cr173.com/html/13179_1.html delphi 2007新功能简介-davidxueer-Chin ...

  3. C#演化过程--各个版本新增加特性

  4. CentOS以及Oracle数据库发展历史及各版本新功能介绍, 便于构造环境时有个对应关系

    CentOS版本历史 版本 CentOS版本号有两个部分,一个主要版本和一个次要版本,主要和次要版本号分别对应于RHEL的主要版本与更新包,CentOS采取从RHEL的源代码包来构建.例如CentOS ...

  5. Apache Kafka 0.11版本新功能简介

    Apache Kafka近日推出0.11版本.这是一个里程碑式的大版本,特别是Kafka从这个版本开始支持“exactly-once”语义(下称EOS, exactly-once semantics) ...

  6. Apache Flink 1.9.0版本新功能介绍

    摘要:Apache Flink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能.目前,Apache Flink 1.9 ...

  7. Windows 10 版本 1507 中的新 AppLocker 功能

    要查看 Windows 10 版本信息,使用[运行]> dxdiag  回车 下表包含 Windows 10 的初始版本(版本 1507)中包括的一些新的和更新的功能以及对版本 1511 的 W ...

  8. 微信小程序0.11.122100版本新功能解析

    微信小程序0.11.122100版本新功能解析   新版本就不再吐槽了,整的自己跟个愤青似的.人老了,喷不动了,把机会留给年轻人吧.下午随着新版本开放,微信居然破天荒的开放了开发者论坛.我很是担心官方 ...

  9. 代码演示C#各版本新功能

    代码演示C#各版本新功能 C#各版本新功能其实都能在官网搜到,但很少有人整理在一起,并通过非常简短的代码将每个新特性演示出来. 代码演示C#各版本新功能 C# 2.0版 - 2005 泛型 分部类型 ...

随机推荐

  1. 【UOJ#310】【UNR#2】黎明前的巧克力(FWT)

    [UOJ#310][UNR#2]黎明前的巧克力(FWT) 题面 UOJ 题解 把问题转化一下,变成有多少个异或和为\(0\)的集合,然后这个集合任意拆分就是答案,所以对于一个大小为\(s\)的集合,其 ...

  2. Docker第二弹之常用命令

    Docker的常用命令 底层原理 Docker是如何工作的 Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上, 然后通过Socket连接从客户端访问,守护进程从 ...

  3. querySelectorAll和getElementsByClassName获取元素的区别

    querySelectorAll()方法是HTML5新增的方法,通过传入一个css选择符,返回所有匹配的元素而不仅仅是一个元素.这个方法返回的是一个NodeList的实例.那么它和通过getEleme ...

  4. xml的解析(概述)

    使用java解析xml☆☆☆ 四个类:分别是针对dom和sax解析使用的类   -dom :     DocumentBuilder:解析器类       -这个类是个抽象类,不能new,       ...

  5. Android集成极光推送

    要说学习极光推送,个人感觉官方文档就非常好啦,但是没法,人太懒啦,为了下次能够快速的将极光推送集成到项目中,故结合之前开发的项目和官方文档记录下简单的Android集成极光推送,在这之前,先上一张简单 ...

  6. jenkins解决乱码

    1.Jenkins系统设置中修改 点击左侧“系统管理”——右侧选择“系统设置”——“全局属性”,选择第一项:Environment variables,键值对列表,点击增加: 键:LANG 值:zh. ...

  7. Python函数作用域和匿名函数

    匿名函数的定义 全局变量和局部变量的概念 global(全局变量)和 nonlocal(局部变量) 闭包.递归.回调 匿名函数 匿名函数  lambda 语法规则:lambda   参数 : 表达式 ...

  8. [PHP] 基于redis的分布式锁防止高并发重复请求

    需求:我们先举个某系统验证的列子:(A渠道系统,业务B系统,外部厂商C系统) (1)B业务系统调用A渠道系统,验证传入的手机.身份证.姓名三要素是否一致. (2)A渠道系统再调用外部厂商C系统. (3 ...

  9. Linux 安装并配置zsh

    1. 安装zsh,配置agnoster主题 1.1 安装zsh $ sudo apt-get install -y zsh 1.2 安装oh-my-zsh $ sh -c "$(curl - ...

  10. 浅谈P/NP问题

    克雷数学研究所(Clay Mathematics Institute,CMI)是在1998年由商人兰顿·克雷(Landon T. Clay)和哈佛大学数学家亚瑟·杰夫(Arthur Jaffe)创立, ...