简体   繁体   English

微软仍然支持 .NET 框架上的 ASP.NET 内核吗?

[英]Is ASP.NET Core on .NET Framework still supported by Microsoft?

I'd like to know if ASP.NET Core - specifically version 2.1 - is still supported if it is running on the .NET Framework runtime .我想知道如果 ASP.NET 核心 - 特别是 2.1 版 -如果它在 .NET 框架运行时上运行,它是否仍然受支持。 With "supported" I only mean "is still getting security fixes" in the context of this question.在此问题的上下文中,“支持”仅指“仍在获取安全修复程序”。

According to the .NET Core and .NET 5 Support Policy :根据.NET Core 和 .NET 5 支持政策

ASP.NET Core 2.1 on .NET Framework .NET 框架上的 ASP.NET 核心 2.1

Support for ASP.NET Core 2.1 on .NET Framework matches the ASP.NET Support policy for other package-based ASP.NET frameworks.对 .NET 框架上的 ASP.NET Core 2.1 的支持与 ASP.NET 对其他基于包的 Z9E0DA8438E38A1DDCZ0 框架的支持策略相匹配。 The complete list of packages covered by this policy can be seen in ASP.NET Core 2.1 Supported Packages .此政策涵盖的软件包的完整列表可以在ASP.NET Core 2.1 Supported Packages中查看。

The first link ( ASP.NET Support ) says this:第一个链接( ASP.NET Support )说:

[...] the following ASP.NET Core 2.1 (latest patched version only) packages will be supported on the .NET Framework and follow the support cycle for those .NET Framework versions. [...] .NET 框架将支持以下 ASP.NET Core 2.1(仅限最新修补版本) 软件包,并遵循这些 .NET 框架版本的支持周期

Although there is no "following" list, I assume they mean the packages link.尽管没有“以下”列表,但我认为它们是指链接。 That page lists ASP.NET Core packages, eg the "main" package "Microsoft.AspNetCore".该页面列出了 ASP.NET 核心包,例如“主要”package“Microsoft.AspNetCore”。

So all of this seems to indicate that ASP.NET Core 2.1 on .NET Framework is still supported.所以这一切似乎都表明 .NET 框架上的 ASP.NET Core 2.1 仍然受支持。

Question 1: Is this correct?问题1:这是正确的吗?

But the last released AspNetCore package is 2.1.7 from January 2019, whereas the current 2.1.x version of .NET Core is 2.1.24 from January 2021.但是最后发布的AspNetCore package是 2019 年 1 月的 2.1.7,而当前的 2.1.x 版本的 .NET Core是 2021 年 1 月的 2.1.24。

Question 2: Why are there no updates for the ASP.NET Core NuGet package for 2 years even though it should still be supported?问题 2:为什么 ASP.NET 内核 NuGet package 仍然支持 2 年没有更新?

If it's still supported, doesn't this also mean that ASP.NET Core 2.1 on .NET Framework is supported as long as the .NET Framework itself is supported - which bascially means as long as the Windows version it's running on is supported? If it's still supported, doesn't this also mean that ASP.NET Core 2.1 on .NET Framework is supported as long as the .NET Framework itself is supported - which bascially means as long as the Windows version it's running on is supported? So even after .NET Core 2.1 support ends on August 21, 2021, ASP.NET Core 2.1 on .NET Framework should still get security updates, right?因此,即使在 .NET Core 2.1 支持于 2021 年 8 月 21 日结束之后,.NET 框架上的 ASP.NET Core 2.1 仍应获得安全更新,对吧?

Question 3: Is this correct, so will we basically get security updates "forever"?问题 3:这是正确的,那么我们基本上会“永远”获得安全更新吗?

"Supported" is not the same as "under active development"; “支持”不等于“正在积极开发中”; it means that you might be able to get some help if there's a problem within what it is already intended to do - it doesn't mean that you get new features or APIs.这意味着如果您已经打算做的事情出现问题,您可能可以获得一些帮助 - 这并不意味着您可以获得新功能或 API。

In reality, though;但实际上; it would be highly inadvisable to start any new work on any version of .NET Core prior to 3.1 (at the time of writing), or to start any new projects on .NET Framework (any version), without first understanding exactly why you are doing that - both what you are gaining, and what you are sacrificing.在 3.1 之前的任何版本的 .NET Core 上开始任何工作(在撰写本文时),或在.NET框架(任何版本)上开始任何新项目,都是非常不可取的- 你正在获得什么,你正在牺牲什么。 All new work should (frankly) target .NET 3.1, or if you want "the new new", .NET 5 but bearing in mind that .NET 5 is not an LTS release, so this should just be a temporary target, with a view of moving to .NET 6 (which is LTS) when that is available.所有新作品都应该(坦率地说)以 .NET 3.1 为目标,或者如果你想要“新的新”,.NET 5但请记住.NET 5 不是临时目标,所以这应该只是一个临时目标到 .NET 6(即 LTS)(如果可用)。

I've got an answer from a Microsoft employee here .我在这里得到了 Microsoft 员工的答复。

TLDR: Yes, ASP.NET Core 2.1 on .NET Framework ist still supported and will be supported as long as the .NET Framework. TLDR:是的,.NET 框架上的 ASP.NET 核心 2.1 仍然受支持,只要 .NET 框架支持。 The NuGet package didn't get any updates because they don't publish new packages for transitive reference updates. NuGet package 没有获得任何更新,因为它们没有发布用于传递参考更新的新包。

Edit: Sadly Microsoft disabled the discussions on the linked repository, so the post is no longer available.编辑:遗憾的是,微软禁用了链接存储库上的讨论,因此该帖子不再可用。 But a recent blog post that highlighted the end of life of .NET Core 2.1 it was also mentioned that this doesn't affect ASP.NET Core 2.1 on .NET Framework:但是最近的一篇博客文章强调了 .NET Core 2.1 的生命周期结束,还提到这不会影响 .NET 框架上的 ASP.NET Core 2.1:

Note: support for ASP.NET Core 2.1 on .NET Framework matches the support policy of the .NET Framework.注意:在 .NET 框架上对 ASP.NET Core 2.1 的支持与 .NET 框架的支持策略相匹配。 See the ASP.NET Support Policy for more details有关详细信息,请参阅ASP.NET 支持政策

Let's understand first about which version of .NET Core you are talking about.我们先了解一下你说的.NET Core是哪个版本的。 Microsoft does not support any version whose updates and end of support date are announced. Microsoft 不支持已宣布更新和支持结束日期的任何版本。

Microsoft has its cadence and is been doing it from its inception to keep itself updated and provide new features, functionalities, and more security to its users. Microsoft 有自己的节奏,并且从一开始就一直在这样做,以保持自身更新并为其用户提供新特性、功能和更高的安全性。 Microsoft's vision for the future of .NET Core is very clear and it will keep bringing regular updates on a regular interval to meet the demand of the future.微软对 .NET Core 未来的愿景非常明确,它将保持定期更新,以满足未来的需求。

Microsoft cadence for .NET Core Versions release date and end of support date Microsoft cadence .NET 核心版本发布日期和支持结束日期.Net Core 版本发布日期和支持结束日期

To know about the supported version for ASP.NET Core by Microsoft, you can read more here: Microsoft announces end of .NET Core 2.1 support要了解 Microsoft 支持的 ASP.NET Core 版本,您可以在此处阅读更多信息: Microsoft 宣布结束 .NET Core 2.1 支持

The support page link in the question clearly explains those packages are maintained问题中的支持页面链接清楚地解释了这些软件包得到维护

To help facilitate migrating applications to ASP.NET Core on .NET Core.帮助促进将应用程序迁移到 .NET 内核上的 ASP.NET 内核。

The change is nothing new, it was announced during .NET Core 3's development and upon release, in articles, blog posts etc.这一变化并不是什么新鲜事,它是在 .NET Core 3 的开发和发布时在文章、博客文章等中宣布的。

ASP.NET Core 2.1 on .NET Core 2.1 gets frequent updates because it follows .NET Core 2.1's support policy. .NET Core 2.1 上的 ASP.NET Core 2.1 得到频繁更新,因为它遵循 .NET Core 2.1 的支持策略。 .NET Core 2.1 and .NET Core 3.1 are long-term support versions, which means they're supported for 3 years after release. .NET Core 2.1 和 .NET Core 3.1 是长期支持版本,这意味着它们在发布后支持 3 年。 This is explained in the .NET Core Support Policy .这在.NET 核心支持政策中进行了解释。 BTW 2.1's support end on August 2021, so you'd better migrate to 3.1. BTW 2.1 的支持将于 2021 年 8 月结束,因此您最好迁移到 3.1。

The real question should be Is .NET Old (Framework) still supported?真正的问题应该Is .NET Old (Framework) still supported? . . Only for security fixes.仅用于安全修复。 ASP.NET Core 3 and later come out only for .NET Core. ASP.NET Core 3 及更高版本仅适用于 .NET Core。 .NET 5 is .NET Core 5. .NET 5 是 .NET 核心 5。

It's time to upgrade是时候升级了

Where to get the Security Updates从何处获取安全更新

Through Windows Update.通过 Windows 更新。 Fixes and patches for .NET Framework are released through the .NET Framework Security and Quality Rollup updates. .NET 框架的修复和补丁通过.NET 框架安全和质量汇总更新发布。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM