什么是 .NET 升级助手?
在本单元中,你将了解 .NET 升级助手如何帮助你分析现有 ASP.NET 应用程序并计划升级到 ASP.NET Core。
.NET 升级助手是一种工具,可帮助你将不同类型的应用程序从较旧版本的 .NET Framework、.NET Core、.NET 5 和 .NET 6 升级到最新的 .NET 版本。 它有两种“形式”:Visual Studio 扩展和 CLI 工具。 运行升级助手后,在某些情况下,应用需要额外的操作才能完成升级。 该工具通过其他分析器接收持续更新,这些分析器可自动修复重大更改并简化升级过程,因此请确保你拥有该工具的最新版本。
Visual Studio 扩展非常便捷,可在整个升级过程中提供图形反馈,因此在本单元中,我们将展示如何使用该扩展。 同时,如果你希望使用 CLI,可在 GitHub 上获取文档和安装程序。
若要跟着一起操作,需要下载并安装 Visual Studio 扩展:
该工具支持下列 .NET Framework 应用类型:
- Windows 窗体应用
- WPF 应用
- ASP.NET MVC 应用
- ASP.NET Web API 应用
- Console 应用程序
- 类库
它从以下版本的 .NET 升级应用:
- .NET framework
- .NET Core
- .NET 5
- .NET 6
- .NET 7
升级到最新的标准期限支持 (STS)、长期支持 (LTS) 或预览版的 .NET。
升级助手工具的命令行版本还支持以下升级:
- 从 Xamarin.Forms 到 .NET MAUI
- 从 WCF 到 Core WCF
升级助手执行的升级步骤
升级解决方案时,该工具将:
- 确定哪些项目需要升级,并建议升级项目的顺序。
- 将项目文件更新为 SDK 样式的项目。
- 移除
packages.config
中可能包含的可传递 NuGet 包依赖项。 - 将项目重新定向到标准期限支持 (STS)、长期支持 (LTS) 或预览版。
- 将 NuGet 包依赖项更新为与 STS、LTS 或预览版兼容的版本。
- 在 C# 源代码中进行简单更新,以将 .NET Framework 中的工作模式替换为 STS、LTS 或预览版的等效项。
- 对于某些应用模型(例如 ASP.NET 应用),请添加常见的模板文件(如 Startup.cs),并基于识别的 web.config 或 app.config 值进行简单更新。
- 对于面向 Windows 的项目,请添加对
Microsoft.Windows.Compatibility
包的引用。
提示
升级助手和升级文档重复引用 TFM。 TFM 是目标框架名字对象的缩写,用于指示可用于项目或库的 API 集。 一些示例 TFM 包括 .NET Framework 4.8 的 net48
和 .NET 7.0 的 net7.0
。 升级助手将为你处理项目文件中 TFM 转换。
故障排除提示
使用 .NET 升级助手时,可能会出现一些已知问题。 某些情况下,.NET 升级助手在内部使用的 try-convert 工具会出现问题。
有关更多故障排除提示和已知问题,可查看此工具的 GitHub 存储库。