本文整理记录了 .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+ 的产品生命周期的更多相关文章

  1. Unity 3D Framework Designing(3)——构建View和ViewModel的生命周期

    > 对于一个View而言,本质上是一个MonoBehaviour.它本身就具备生命周期这个概念,比如,Awake,Start,Update,OnDestory等.这些是非常好的方法,可以让开发者 ...

  2. 第三节:EF Core上下文DbContext相关配置和生命周期

    一. 配置相关 1. 数据库连接字符串的写法 (1).账号密码:Server=localhost;Database=EFDB01;User ID=sa;Password=123456; (2).win ...

  3. 【Spring Framework】Spring IOC详解及Bean生命周期详细过程

    Spring IOC 首先,在此之前,我们就必须先知道什么是ioc,ioc叫做控制反转,也可以称为依赖注入(DI),实际上依赖注入是ioc的另一种说法, 1.谁控制谁?: 在以前,对象的创建和销毁都是 ...

  4. 【Framework】深入研究Asp.net页面的生命周期

    介绍 Asp.net是微软.Net战略的一个组成部分.它相对以前的Asp有了很大的发展,引入了许多的新机制.本文就Asp.net页面的生命周期向大家做一个初步的介绍,以期能起到指导大家更好.更灵活地操 ...

  5. 在.net core自带DI中服务生命周期 Transient,Scoped,Singleton

    只要是透过WebHost产生实例的类型,都可以在构造方法注入.所以Controller.View.Filter.Middleware或自定义的Service等都可以被注入. Transient是瞬时的 ...

  6. 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 ...

  7. 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 ...

  8. Entity Framework (EF) Core工具创建一对多和多对多的关系

     一. EntirtyFramework(EF)简介 EntirtyFramework框架是一个轻量级的可扩展版本的流行实体框架数据访问技术,微软官方提供的ORM工具让开发人员节省数据库访问的代码时间 ...

  9. C# .NET .NET Framework .NET CORE 等的关系简介

    2019新的一年,祝大家新年快乐,工作生活一帆风顺,心想事成!诸事大吉! 这篇文章是我今年的第一篇博客,主题是:C#  .NET  .NET Framework   .NET CORE  等这些名词之 ...

随机推荐

  1. 常用的body和通用css设置

    body{ min-width: 320px; width: 15rem; margin: 0 auto; line-height: 1.5; background: #f2f2f2; overflo ...

  2. layui table 数据表格固定列的行高和table其他列的行高不一致

    1.问题描述:使用layui的table数据表格,固定某一列,这样表格中数据的宽度超出屏幕宽度时,固定列可以一直显示在屏幕中,不会随着底部滚动栏左右的拖动而变化位置.但是遇到一个问题,就是固定列的行高 ...

  3. windows环境下Kubernetes及Docker安装(那些坑)

    k8s 和 Docker容器技术,当前非常流行的技术. 让人日狗的是,   这套技术栈对CN的donet 程序员不怎么友好.娓娓道来,1. 好多镜像都是需要梯子才能访问: 2. window程序员天生 ...

  4. 深入浅出Spring MVC

    摘要 本文旨在详细分析SpringMVC工作原理以及作为开发者如何基于SpringMVC做扩展.因为SpringMVC分析的文章比较多,所以本文重点讲解如何利用SpringMVC的扩展点实现我们的需求 ...

  5. zabbix通过IPMI监控服务器传感器参数

    一.需求:机房dell服务器和IBM服务器皆有主板管理接口iDRAC和iMM,上周已为服务器管理接口配置了ip地址,考虑通过zabbix实现对服务器传感器参数的实时监控.使用DELL-DL1300服务 ...

  6. 【Mybatis】mybatis开启Log4j日志、增删改查操作

    Mybatis日志(最常用的Log4j) 官方网站http://www.mybatis.org/mybatis-3/zh/logging.html 1.在src目录下创建一个log4j.propert ...

  7. Java实现 LeetCode 673 最长递增子序列的个数(递推)

    673. 最长递增子序列的个数 给定一个未排序的整数数组,找到最长递增子序列的个数. 示例 1: 输入: [1,3,5,4,7] 输出: 2 解释: 有两个最长递增子序列,分别是 [1, 3, 4, ...

  8. Java实现 LeetCode 633 平方数之和(暴力大法)

    633. 平方数之和 给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a2 + b2 = c. 示例1: 输入: 5 输出: True 解释: 1 * 1 + 2 * 2 = 5 ...

  9. Java实现 LeetCode 451 根据字符出现频率排序

    451. 根据字符出现频率排序 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1: 输入: "tree" 输出: "eert" 解释: 'e ...

  10. Java实现 蓝桥杯VIP 算法训练 接水问题

    题目描述 有n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小. 输入输出格式 输入格式: 输入文件共两行,第一行为n:第二行分别 ...