c#版本、.net版本、visual studio版本之间的对应关系

embedded/2025/1/15 13:30:16/

最近这几年一直没用过c#开发,都是从事Qt c++开发工作,回想一下之前c#还要追溯到2019年,算算时间大概都已过去4,5年了,时间飞快。

2019真是个神奇的数字,vs2019是我用的时间最长的一个IDE,新冠起始于2019/12,而微软的.net core 3.0也是发布于2019年,微软终于开始拥抱开源、拥抱跨平台。仿佛2019之前是一个世界,2019之后是另一个世界。。

最近工作之余想体验下.net 6/7/8,重温.net的丝滑和优雅。收集整理了c#版本变更记录之。

C#、.NET版本、Visual Studio版本对应关系

c#版本发布年份对应.NET版本Visual Studio版本主要特性
C# 1.02000.NET Framework 1.0-类、对象、基本数据类型。
C# 2.02001.NET Framework 2.0Visual Studio 2005泛型、可空类型、迭代器。
C# 3.02007.NET Framework 3.5Visual Studio 2008LINQ(语言集成查询)、自动属性、扩展方法。
C# 4.02010.NET Framework 4.0Visual Studio 2010动态类型、命名参数、可选参数。
C# 5.02012.NET Framework 4.5Visual Studio 2012异步编程(async/await)。
C# 6.02015.NET Framework 4.6Visual Studio 2015字符串插值、默认值属性、静态 usings。
C# 7.02017.NET Framework 4.6.2+Visual Studio 2017模式匹配、元组、局部函数。
C# 8.02019.NET Core 3.0+
.NET Framework 4.8
Visual Studio 2019可空引用类型、异步流、switch表达式。
C# 9.02020.NET 5.0Visual Studio 2019记录类型、init访问器、功能增强。
C# 10.02021.NET 6.0Visual Studio 2022文件范围的命名空间、全局 usings、记录结构。
C# 11.02022.NET 7.0Visual Studio 2022原生字面量、泛型参数修饰符。
C# 12.02023.NET 8.0Visual Studio 2022主构造函数‌、‌集合表达式‌、‌ref readonly 参数‌、‌Lambda 表达式默认参数‌、‌内联数组‌、‌实验性质的拦截器‌等
C# 13.02024.NET 9.0Visual Studio 2022半自动属性、扩展类型、参数修饰符的扩展、LINQ优化、性能改进等

.NET Framework与.NET Core的区别

  • .NET Framework:主要用于Windows应用程序开发,功能强大但不支持跨平台。
  • .NET Core:为跨平台设计,性能更优,支持现代应用开发。
  • .NET 5.0及后续版本统一了.NET生态。

Visual Studio的经典版本

  • Visual Studio 2005 - 引入了许多C# 2.0特性。
  • Visual Studio 2010 - 支持C# 4.0的新特性。
  • Visual Studio 2019 - 提供了对C# 8.0的全面支持。

http://www.ppmy.cn/embedded/154110.html

相关文章

长安“战疫”网络安全公益赛的一些随想

起因 今年刚进入大学,开始带校队,为了培养校队新成员,也就一直计划着和当地的一些高校合作交流,但是由于种种原因一直被搁置下来。正巧学校信息中心和四叶草有一个培训项目的合作,学校的网安协会也算是沾了光成为了培…

Docker-compose Prometheus Grafana 安装

环境准备 #要在 Vim 中默认启用 set paste 和 set number, vim ~/.vimrc #在 .vimrc 文件中添加以下内容: set paste set number 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/2.31.1/docker-compos…

16. C语言 字符串详解

本章目录: 前言C 字符串的基础概念字符串的定义字符串的内存表示 常见的字符串操作函数示例代码 深入探讨字符串长度计算strlen 与 sizeof 的区别 字符串操作的注意事项**1. 字符数组的大小**2. 字符数组和字符指针的区别3. 使用安全函数 字符串的遍历与格式化输出**遍历字符串…

Spring——自动装配

假设一个场景: 一个人(Person)有一条狗(Dog)和一只猫(Cat),狗和猫都会叫,狗叫是“汪汪”,猫叫是“喵喵”,同时人还有一个自己的名字。 将上述场景 抽象出三个实体类&…

Qiskit快速编程探索(基本篇)

一、引言 1.1 量子计算的崛起 量子计算作为当今科学界与技术领域最具开创性的前沿方向之一,正逐步重塑我们对计算能力的认知边界。自20世纪初量子力学理论奠基以来,历经无数科学家的不懈钻研,量子计算从抽象的理论构想逐步走向现实应用的舞…

React 中事件机制详细介绍:概念与执行流程如何更好的理解

React 的事件机制是一个非常重要的概念,它涉及到 React 如何处理用户的交互事件。React 的事件系统与传统的 DOM 事件系统有所不同,它在底层使用了事件委托和合成事件(Synthetic Events)来优化性能。下面,我们将从 Rea…

Mac——Cpolar内网穿透实战

摘要 本文介绍了在Mac系统上实现内网穿透的方法,通过打开远程登录、局域网内测试SSH远程连接,以及利用cpolar工具实现公网SSH远程连接MacOS的步骤。包括安装配置homebrew、安装cpolar服务、获取SSH隧道公网地址及测试公网连接等关键环节。 1. MacOS打开…

简识MySQL存储引擎innodb的lock_mode锁模式

原先的提问: 在innodb中, lock_mode X 、lock_mode X locks rec but not gap 、 lock_mode X locks gap before rec 分别表示什么? 在InnoDB存储引擎中,锁模式(lock mode)决定了事务在读取或修改数据时如何…