近日,微软宣布计划于 2022 年 12 月 13 日停止支持 Microsoft .NET Core Framework 的长期支持 (LTS) 版本 3.1。2019 年发布的 Microsoft .NET Core Framework 3.1 版即将结束支持日期。
.NET Core 是一个免费开源的、用于 Windows、Linux 和 macOS 操作系统的软件框架,主要由微软员工通过 .NET 基金会开发发布。3.1 版是微软的长期支持 (LTS) 版本,自发布之日起的支持生命周期为三年。非 LTS 版本(例如 .NET 7.0)的支持生命周期较短为 18 个月。微软计划 .NET 版本每年推出一个主要版本的 .NET,在 LTS 和当前版本之间进行交替。
目前 .NET 的最新 LTS 版本是 6.0,微软计划支持到 2024 年 11 月 12 日。另外微软预计在 2022 年 11 月发布非 LTS 版本 .NET 7.0,这意味着当前 .NET Core 3.1 的客户可以选择在 .NET Core 3.1 支持日期结束之前升级到 .NET 6 或 7 之间。
微软建议开发者将 .NET Core 3.1 应用程序升级到 .NET 6.0 以在未来继续受到支持。根据微软高级项目经理 Dominique Whittaker 的说法,使用 3.1 版本的客户也应该迁移到 .NET 6 或 7 以仍然获得官方支持和安全补丁。
Whittaker 解释说,.NET Core 3.1 应用程序在支持日期结束后仍然可以继续运行,但客户可能会面临潜在的安全漏洞,微软也将仅针对受支持的版本进行漏洞修补。
对于开发者来说,.NET Core 3.1 和 .NET 6.0 之间可能存在不兼容的情况,微软提供名为 upgrade-assistant 的开源升级工具,该工具可以分析应用程序代码、更新项目文件、检查重大更改并进行一些自动代码修复。不过但开发人员仍需进行一些手动修复,微软也建议开发人员在升级应用程序时查看官方兼容性指南以了解任何问题。
不过对于微软的 .NET 更新支持政策,目前开发者有不同的看法。一部分开发人员认为,三年的支持周期对于企业项目来说太短了;而另一些开发人员则表示,代码依赖关系日益复杂,使得频繁的版本升级成为一种必要的工作方式。
对此,CSLA.NET 应用程序框架的创建者 Rockford Lhotka 认为,.NET 代码升级的大部分痛苦来自于将旧的 .NET Framework 迁移到新的 .NET 框架中,而.NET 核心版本之间的升级则大大降低了工作强度。
根据 2022 年 6 月的数据,应用程序中使用最多的 .NET Framework 版本正是 .NET Core 3.1,占总数据的 31%。
评论