将.NET Framework 4.8迁移到.NET 5



最近Microsoft发布了.NET 5。如果我们想将.NET Framework 4.8升级到.NET 5,那么我们该如何完成这项任务呢。

请注意:

  1. 我已经用最新版本升级了Visual Studio 18.2组件和.net Framework 5。但在projectproperty.net5不显示。

  2. 我的应用程序在.net Framework中,而不是在.net核心中。

更新时间:2021年2月2日 我在微软论坛上发布了同样的问题,幸运的是他们的回答非常积极。

https://developercommunity2.visualstudio.com/t/net-framework-48-upgrade-to-net-5/1269991?from=email&视图类型=全部#T-ND1352565

2021年8月更新

来自Microsoft 的消息

我们将继续通过GitHub回购中的预览来改进.NET升级助手。你可以在这里找到它:https://github.com/dotnet/upgrade-assistant

2023年5月更新我又找到了一个链接。这可能有助于

https://procodeguide.com/dotnet/migrate-net-framework-to-net-core/

升级快乐!

您没有提到项目的类型。但总的来说,你应该遵循官方文件。例如,对于winforms项目,请参阅如何将Windows窗体桌面应用程序迁移到.NET 5。

最有可能的是,作为第一件事,您需要手动编辑项目文件,并将其更改为SDK样式,如上面的文章所述:

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
</PropertyGroup>
</Project>

您可以使用Microsoft发布的.NET升级助手工具。这个工具可以很容易地将你的.net框架项目转换为.net5。

.NET5是.NET核心的进化。因此,这不是一个微不足道的变化。首先,您需要有Visual Studio 2019(v16.8((确保安装中包含.NET(。其次,您需要检查您的所有NuGet包和库是否都支持此功能(并对其进行更新或寻找替代品(。此外,你还可以看看是否有任何突破性的变化影响到你https://learn.microsoft.com/en-us/dotnet/core/compatibility/5.0.请记住,.NET 5不是LTS,这意味着当.NET 6问世时,它将不受支持。

根据您的体系结构(分离层(,您的解决方案有多大,以及您是否使用.NET库标准,将取决于您需要做的工作(您可能还需要进行一些重构(。无论如何,您应该对此进行彻底的规划,因为这不是一个微不足道的迁移。

最新更新