什么是 .NET 升级助手?
.NET 升级助手可帮助将项目升级到较新版本的 .NET,并分析代码来发现并修复潜在的不兼容问题。 该工具的一个重点是帮助将项目从 .NET Framework、.NET Core 或 .NET 迁移到最新版本的 .NET。 使用扩展或工具升级整个 .NET 项目,或项目的某些方面,例如将配置文件从旧类型迁移到较新的类型。
.NET 升级助手作为 Visual Studio 扩展或命令行接口 (CLI) 工具分发。
分析和升级
.NET 升级助手包括扫描项目及其依赖项的分析引擎。 扫描完成后,将生成一个报告,其中包含有关执行升级的详细信息。 可以使用此信息升级整个项目或项目的特定部分。
支持的项目类型
.NET 升级助手支持升级在 C# 或 Visual Basic 中编码的项目。 支持以下项目类型:
- ASP.NET
- Azure Functions
- Windows Presentation Foundation
- Windows 窗体
- 类库
- Console 应用程序
- Xamarin Forms
- .NET MAUI
- .NET Native UWP
某些产品提供有关如何使用 .NET 升级助手的指导。
升级路径
支持下列升级路径:
- .NET Framework 到 .NET
- .NET Core 到 .NET
- Azure Functions v1-v3 到 v4 隔离(面向 net6.0+)
- UWP 到 WinUI 3
- 以前的 .NET 版本到最新 .NET 版本
- Xamarin Forms 到 .NET MAUI
- XAML 文件转换仅支持升级命名空间。 若要进行更全面的转换,请使用 Visual Studio 2022 版本 17.6 或更高版本。
升级详细信息和选项
启动升级后,向导将引导你在启动升级之前配置一些选项。 根据要升级的项目类型,向导会显示不同的选项。 有关升级项目的示例,请参阅 使用 .NET 升级助手升级项目。
如何执行升级
根据要升级的项目类型,可以更改升级的执行方式。 项目类型会影响哪些选项可用,可能缺少以下一个或多个项:
就地项目升级
此选项无需复制即可升级项目。
并行项目升级
复制项目并升级副本,从而保留原始项目。
并行增量
对于复杂的 Web 应用,这是一个不错的选择。 从 ASP.NET 升级到 ASP.NET Core 需要进行大量的工作,有时还需要手动重构。 此模式将 .NET 项目放在现有 .NET Framework 项目旁边。 终结点通过 .NET 项目路由,而所有其他调用将发送到 .NET Framework 应用程序。
此模式使你可以逐步升级 ASP.NET 或库应用逐条升级。
升级结果
升级完成后,将显示状态屏幕,其中显示了与升级关联的所有项目。 可以展开每个升级项目,以阅读有关状态的详细信息。 以下列表介绍了状态图标:
- 未填充绿色复选标记:工具找不到有关要升级的项目的任何内容。
- 已填充绿色复选标记:项目已升级并成功完成。
- 黄色警告标志:项目已升级,但应考虑重要信息。
- 红色 X:项目升级失败。
此外,升级过程中执行的操作将记录到升级助手源下的“输出”窗口,如下图所示:
升级项目后,请彻底测试它!