用途:根据 dotnet-version-detection 的输出,为 .NET 项目制定并执行 TFM 升级方案。不负责 TFM 检测、多目标与 polyfill、云部署及 CI/CD 变更。
升级路径:生产(默认)net8.0->net10.0,两端均为 LTS,风险低;分阶段生产 net8.0->net9.0->net10.0,适用于依赖需中间版本或变更面过大时,风险中等;实验 net10.0->net11.0(预览),仅限非生产探索,风险高。选择依据:依赖在目标 LTS 可用则直连 LTS;否则分阶段;仅 R&D 用实验路径。
主要能力与用法:更新项目文件中的 TargetFramework 与 global.json 的 SDK 版本;用 dotnet-outdated 检查并升级包(dotnet outdated --upgrade --version-lock major);共享框架包主版本需与 TFM 对齐;用 dotnet build --warnaserror 与分析器(CA1422、SYSLIB 等)发现破坏性变更并替换弃用 API(如 BinaryFormatter 改 System.Text.Json);用 dotnet test 验证。可选 .NET Upgrade Assistant(upgrade-assistant analyze/upgrade)适合大型解决方案,但不处理全部变更。
限制:.NET 9 为 STS,2024 年 11 月 GA,2026 年 5 月终止支持,分阶段须在窗口内完成第二跳;预览 SDK 不可用于生产,应固定版本并禁用 rollForward;dotnet-outdated 不处理包内 API 变更;未提供价格、平台与收费信息。