.NET Framework、.NET Core 和 .NET 5+ 的产品生命周期
本文整理记录了 .NET Framework、.NET Core 和 .NET 各个版本的产品支持周期和操作系统兼容性。
早于 .NET Framework 2.0 和 .NET Core 2.1 的 .NET 版本以及 .NET Core 2.2、.NET Core 3.0 已经停止了任何形式的支持,因此本文不做讨论。
.NET 版本说明
.NET Framework 4.5 是可替换计算机上的 .NET Framework 4 的就地更新,同样,.NET Framework 4.5.1、4.5.2、4.6、4.6.1、4.6.2、4.7、4.7.1、4.7.2 和 4.8 是对 .NET Framework 4.5 的就地更新。 就地更新意味着它们使用相同的运行时版本,但是程序集版本会更新,并且包括新类型和成员。 安装其中一个更新后,.NET Framework 4、.NET Framework 4.5、.NET Framework 4.6 或 .NET Framework 4.7 应用应继续运行,而无需重新编译。 但是,反过来则不行。 建议不要在较早版本的 .NET Framework 上运行面向更高版本的 .NET Framework 的应用。 例如,建议在 .NET Framework 4.5 上运行面向 .NET Framework 4.6 的应用。(参见 版本 4.5 及更高版本的备注)
.NET Core 为一个全新的跨平台框架,支持 Windows、Linux 和 macOS 等多种平台,以 MIT 协议完全开源。.NET Core 最早于 2014 年公布,首个版本 .NET Core 1.0 发布于 2016 年。随着版本的演进,.NET Core 不断加入 .NET Framework 原有的功能,直到 .NET Core 3.1,完成这一进程。剩余少量 .NET Core 不支持的 .NET Framework 技术 不再向 .NET Core 移植。
.NET Core 3.1 之后,随着技术移植进程的结束,.NET Core 的后续版本将作为 .NET Framework 和 .NET Core 的继任者,移除 "Core" 字样直接称作 ".NET",版本号自 ".NET 5" 开始。因此,.NET Framework 4.8 将会是 .NET Framework 的最后一个版本。
.NET 支持政策
.NET Core 和 .NET 的版本类型
本节整理自 .NET Core 支持政策。
.NET Core/.NET 分为长期支持 (LTS) 版本和最新 (Current) 版本。自 .NET Core 2.2 起,两者的支持周期如下:
- LTS (Long Term Support): 在初始发布后的三年内受支持。
- Current:在初始发布后,直到下一个 Current 或 LTS 版本发布后的三个月内受支持。
.NET Core 和 .NET 发布节奏
本节整理自 .NET 5 简介
自 2020 年起,每年 11 月为 .NET 发布新的主要版本,版本号自 5.0 起递增。即 2020 年 11 月发布 .NET 5.0,2021 年 11 月发布 .NET 6.0,以此类推。
自 2021 年起,将隔年发布的主要版本标记为 LTS 版本(即偶数的主要版本为 LTS 版本,奇数的为 Current 版本)。
.NET Core 和 .NET 生命周期详情
本节整理自 .NET 5 简介 以及 .NET Core 支持政策,仅列出了生命周期尚未结束的版本。
| 版本 | 初始发布时间 | 支持级别 | 结束支持时间 |
|---|---|---|---|
| .NET 8 | 2023 年 11 月(预计) | LTS | 2025 年 11 月(预计) |
| .NET 7 | 2022 年 11 月(预计) | Current | 2023 年 2 月(预计) |
| .NET 6 | 2021 年 11 月(预计) | LTS | 2024 年 11 月(预计) |
| .NET 5 | 2020 年 11 月(预计) | Current | 2022 年 2 月(预计) |
| .NET Core 3.1 | 2019 年 12 月 3 日 | LTS | 2022 年 12 月 3 日 |
| .NET Core 2.1 | 2018 年 5 月 30 日 | LTS | 2021 年 8 月 21 日 |
.NET Framework 各版本支持政策
本节内容整理自 .NET Framework 生命周期常见问题。
- .NET Framework 4.5.2 及以上版本被定义为 Windows 操作系统的一个组件,与其父产品获得相同的生命周期,详见下节内容。
- .NET Framework 4、4.5 和 4.5.1 已于 2016 年 1 月 12 日停止支持,客户和开发人员必须就地更新到 .NET Framework 4.5.2 及以上版本,才能技术获得技术支持和安全更新。
- .NET Framework 3.5 SP1 在 Windows 10 v1809 和 Windows Server 2019 及以上版本中作为独立的产品存在,自 2018 年 10 月 2 日起获得 5 年主流支持和 5 年扩展支持。
- .NET Framework 3.5 SP1 在 Windows 10 v1809 和 Windows Server 2019 以前的操作系统中,作为操作系统的组件存在,其生命周期与其父产品相同。
- .NET Framework 2.0、3.0 和 3.5 已先后停止支持,客户和开发人员可就地更新到 .NET Framework 3.5 SP1,以便在后者的生命周期内获得技术支持和安全更新。由于 .NET Framework 3.5 依赖于 2.0 以及 3.0,因此 .NET Framework 2.0 SP2 和 .NET Framework 3.0 SP2 组件在安装了 .NET Framework 3.5 SP1 环境当中得到支持。
.NET Framework 版本和操作系统版本的关系
本节内容整理自 .NET Framework 版本和依赖关系 以及 .NET Framework 系统需求。
.NET Framework 4.5 预装在了 Windows 8 和 Windows Server 2012 中。此后,每个版本的 Windows 操作系统都包含了特定版本的 .NET Framework 4.x。
.NET Framework 4.8 预装在了 Windows 10 v1903 (build 18362) 及以上版本中。
.NET Framework 4.6.1 及以上版本可以安装在 Windows 7 和 Windows Server 2008 R2 SP1 及以上版本的 Windows 操作系统中,但不可以安装低于预装于操作系统中的版本。
.NET Framework 4.6 为 Windows Vista 和 Windows 2008 SP2 支持的最高版本。
.NET Framework 4.0.3 为 Windows XP 和 Windows Server 2003 支持的最高版本。(参见 在 Windows XP 和 Windows Server 2003 上安装 .NET Framework)
- 注意:.NET Framework 4、.NET Framework 4.0.3 和 Windows XP、Windows Server 2003 已经停止支持,不会再接收任何形式的安全更新。
.NET Framework 3.5 SP1 在 Windows XP 和 Windows Server 2013 及以上版本的 Windows 操作系统中,可以使用 安装程序 进行安装。
.NET Framework 3.5 SP1 在 Windows 10,Window Server 2016 和 Windows Server 2019 中可以通过控制面板直接启用。
.NET Framework、.NET Core 和 .NET 5+ 的产品生命周期的更多相关文章
- Unity 3D Framework Designing(3)——构建View和ViewModel的生命周期
> 对于一个View而言,本质上是一个MonoBehaviour.它本身就具备生命周期这个概念,比如,Awake,Start,Update,OnDestory等.这些是非常好的方法,可以让开发者 ...
- 第三节:EF Core上下文DbContext相关配置和生命周期
一. 配置相关 1. 数据库连接字符串的写法 (1).账号密码:Server=localhost;Database=EFDB01;User ID=sa;Password=123456; (2).win ...
- 【Spring Framework】Spring IOC详解及Bean生命周期详细过程
Spring IOC 首先,在此之前,我们就必须先知道什么是ioc,ioc叫做控制反转,也可以称为依赖注入(DI),实际上依赖注入是ioc的另一种说法, 1.谁控制谁?: 在以前,对象的创建和销毁都是 ...
- 【Framework】深入研究Asp.net页面的生命周期
介绍 Asp.net是微软.Net战略的一个组成部分.它相对以前的Asp有了很大的发展,引入了许多的新机制.本文就Asp.net页面的生命周期向大家做一个初步的介绍,以期能起到指导大家更好.更灵活地操 ...
- 在.net core自带DI中服务生命周期 Transient,Scoped,Singleton
只要是透过WebHost产生实例的类型,都可以在构造方法注入.所以Controller.View.Filter.Middleware或自定义的Service等都可以被注入. Transient是瞬时的 ...
- ASP.NET Core 开发-Entity Framework (EF) Core 1.0 Database First
ASP.NET Core 开发-Entity Framework Core 1.0 Database First,ASP.NET Core 1.0 EF Core操作数据库. Entity Frame ...
- ASP.NET Core 开发 - Entity Framework (EF) Core
EF Core 1.0 Database First http://www.cnblogs.com/linezero/p/EFCoreDBFirst.html ASP.NET Core 开发 - En ...
- Entity Framework (EF) Core工具创建一对多和多对多的关系
一. EntirtyFramework(EF)简介 EntirtyFramework框架是一个轻量级的可扩展版本的流行实体框架数据访问技术,微软官方提供的ORM工具让开发人员节省数据库访问的代码时间 ...
- C# .NET .NET Framework .NET CORE 等的关系简介
2019新的一年,祝大家新年快乐,工作生活一帆风顺,心想事成!诸事大吉! 这篇文章是我今年的第一篇博客,主题是:C# .NET .NET Framework .NET CORE 等这些名词之 ...
随机推荐
- 插入与读取Blob类型数据
BlobTest package com.aff.PreparedStatement; import java.io.File; import java.io.FileInputStream; imp ...
- meavn项目由打包方式jar改为war报Cannot install Dynamic Web Module 2.5 facet. It is incompatibile with already installed facets: Utility Module. Please modify project configuration.处理方式
找到 \项目名\.setting\文件夹下的 org.eclipse.wst.common.project.facet.core.xml xml文件. 添加或修改 <installed ...
- RocketMQ安装及入门
本文是作者原创,版权归作者所有.若要转载,请注明出处. 本文RocketMQ版本为rocketmq-all-4.7.0,系统为win10.请各位去官网下载,也可以留言,我发安装包 RocketMQ安装 ...
- Golang模拟用户登陆,突破教务系统
目录 一.Golang模拟用户登陆,突破教务系统 1.1 请求登陆页面 1.2 抓包分析登陆请求 1.3 golang使用js引擎合成salt 1.4 模拟表单提交,完成登陆 1.5 进入成绩查询页, ...
- Johnson-Trotter(JT)算法生成排列
对于生成{1,……,n}的所有n!个排列的问题,我们可以利用减治法,该问题的规模减一就是要生成所有(n-1)!个排列.假设这个小问题已经解决了,我们可以把n插入到n-1个元素的每一种排列中的n ...
- (Java实现) 最佳调度问题
题目描述 假设有n个任务由k个可并行工作的机器完成.完成任务i需要的时间为ti.试设计一个算法找出完成这n个任务的最佳调度,使得完成全部任务的时间最早. 对任意给定的整数n和k,以及完成任务i需要的时 ...
- Java实现 LeetCode 820 单词的压缩编码(字典树)
820. 单词的压缩编码 给定一个单词列表,我们将这个列表编码成一个索引字符串 S 与一个索引列表 A. 例如,如果这个列表是 ["time", "me", & ...
- Java实现 LeetCode 420 强密码检验器
420. 强密码检验器 一个强密码应满足以下所有条件: 由至少6个,至多20个字符组成. 至少包含一个小写字母,一个大写字母,和一个数字. 同一字符不能连续出现三次 (比如 "-aaa-&q ...
- Java实现 蓝桥杯VIP 算法提高 3-1课后习题2
算法提高 3-1课后习题2 时间限制:1.0s 内存限制:256.0MB 问题描述 编写一个程序,接受用户输入的10个整数,输出它们的和. 输出格式 要求用户的输出满足的格式. 例:输出1行,包含一个 ...
- Java实现 LeetCode 34 在排序数组中查找元素的第一个和最后一个位置
在排序数组中查找元素的第一个和最后一个位置 给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n ...