We recently reshipped ASP.NET Core 2.1 as ASP.NET Core 2.3 for ASP.NET Core users that are still on .NET Framework. To stay in support, all ASP.NET Core users on .NET Framework should update to this new version.
Note
This post only applies if you’re using ASP.NET Core on .NET Framework. If you’re using ASP.NET Core 2.x on .NET Core 2.x, it is already out of support, and you should upgrade to a supported version such as .NET 8.How to upgrade
To upgrade ASP.NET Core apps running on .NET Framework to ASP.NET Core 2.3:
- Upgrade your NuGet packages: Update your project to use ASP.NET Core 2.3 packages. These packages are the same as ASP.NET Core 2.1 but re-versioned.
- Remove any dependency on changes introduced in ASP.NET Core 2.2: ASP.NET Core 2.2 apps that depend on changes in ASP.NET Core 2.2 will need to remove any dependency on these changes.
- Test your application: Thoroughly test your application to verify that everything works as expected after the upgrade.
Background
Early versions of ASP.NET Core were provided for .NET Framework and .NET Core. ASP.NET Core 2.1 has been supported on .NET Framework to facilitate migrations to later .NET versions. However, ASP.NET Core 2.2 went out of support with the rest of .NET Core 2.2 on all platforms in 2019.
ASP.NET Core 2.2 shipped before we had a predictable schedule and alternating releases of Standard Term Support (STS) and Long Term Support (LTS). Many users upgraded to ASP.NET Core 2.2, not realizing that this reduced their support duration. As a result, some users are inadvertently running on the unsupported version of ASP.NET Core 2.2 on .NET Framework.
Since ASP.NET Core 2.x for .NET Framework is shipped as a set of packages, downgrading isn’t easy; there are well over one hundred packages to downgrade with inconsistent version numbers. Some NuGet packages also now require ASP.NET Core 2.2, so downgrading to ASP.NET Core 2.1 could result in NuGet dependency with errors.
In order to make staying in support easier, we’ve reshipped ASP.NET Core 2.1 as ASP.NET Core 2.3, so you can simply upgrade to a supported version. By reshipping ASP.NET Core 2.1 as ASP.NET Core 2.3, we provide users on ASP.NET Core 2.2 an off ramp to the supported version via a regular NuGet upgrade. Users updating from ASP.NET Core 2.2 to 2.3 will need to remove any dependencies on changes introduced in ASP.NET Core 2.2. Users on ASP.NET Core 2.1 should also update to 2.3 with the assurance that it’s the same code as 2.1. Moving forward, any servicing updates to ASP.NET Core for .NET Framework will be published based on 2.3.
The following table summarizes the state of support of the various ASP.NET Core 2.x version on .NET Framework: | Product | .NET Framework Support |
---|---|---|
ASP.NET Core 2.1 | Unsupported, replaced by ASP.NET Core 2.3 | |
ASP.NET Core 2.2 | Ended December 23, 2019 | |
ASP.NET Core 2.3 | Supported, same code as 2.1 |
Caution
ASP.NET Core 2.2 is not supported and went out of support over five years ago. If you’re using ASP.NET Core 2.2 on .NET Framework, we strongly recommend updating to ASP.NET Core 2.3 as soon as possible in order to stay supported and to receive relevant security fixes.Why we’re reshipping ASP.NET Core 2.1 as ASP.NET Core 2.3
You might wonder why we don’t reship ASP.NET Core 2.2 as 2.3 instead. The reason is that ASP.NET Core 2.2 includes breaking changes. ASP.NET Core 2.2 went out of support five years ago, while ASP.NET Core 2.1 remained supported. We don’t want existing supported ASP.NET Core 2.1 apps to break when updating to ASP.NET Core 2.3.
Summary
ASP.NET Core users on .NET Framework should update to the latest ASP.NET Core 2.3 release to stay in support. This update enables ASP.NET Core 2.2 users to update to a supported version by doing a NuGet package upgrade instead of a downgrade. ASP.NET Core 2.1 users updating to ASP.NET Core 2.3 should experience no change in behavior as the packages contain the exact same code. ASP.NET Core 2.2 users may need to remove any dependencies on ASP.NET Core 2.2 specific changes. Any future servicing fixes for ASP.NET Core on .NET Framework will be based on ASP.NET Core 2.3.
Questions? Please ask in this issue: ASP.NET Core 2.1 becomes ASP.NET Core 2.3.
0 comments
Be the first to start the discussion.