You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS2022新建MAUI应用默认依赖.NET6而非.NET9的问题求助

问题分析与解决方案

核心问题总结

使用VS2022社区版新建.NET MAUI项目时,默认依赖.NET 6,执行dotnet workload restore后仍出现tizen相关工作负载报错,手动修改目标框架为.NET 9也无法解决问题。


针对疑问的解答与修复步骤

1. 为何新项目默认依赖.NET 6而非.NET 9?

  • VS内置的MAUI项目模板未更新:旧版模板默认绑定.NET 6,未同步到你安装的.NET 9 SDK版本。
  • 存在全局版本锁定:系统或项目目录下的global.json文件强制指定了.NET 6 SDK版本,导致新建项目时优先使用该版本。

2. 让新项目默认使用.NET 9的修复步骤

步骤1:更新MAUI项目模板

打开命令提示符,执行以下命令拉取最新模板:

dotnet new update

该命令会同步当前安装的最高版本.NET SDK对应的MAUI模板。

步骤2:检查并修改global.json(若存在)

在用户目录(C:\Users\[你的用户名])或常用项目根目录查找global.json文件,打开后确认sdk.version是否为.NET 9版本。如果是旧版本,修改为已安装的.NET 9 SDK版本,示例:

{
  "sdk": {
    "version": "9.0.100"
  }
}

若无此文件,无需创建,VS会自动使用已安装的最新SDK。

3. 解决tizen/maccatalyst目标框架与工作负载错误

原因

旧版MAUI模板默认包含tizen和maccatalyst目标框架,若未安装对应工作负载或不需要这些平台,就会触发构建报错。

修复方案

  • 方案1:移除不需要的目标框架
    打开项目的.csproj文件,将<TargetFrameworks>修改为你实际需要的平台,例如仅保留Android和Windows:
<TargetFrameworks>net9.0-android;net9.0-windows10.0.19041.0</TargetFrameworks>
  • 方案2:强制修复工作负载(若需要tizen平台)
    执行以下命令彻底卸载并重装tizen工作负载:
dotnet workload uninstall maui-tizen
dotnet workload install maui-tizen --force

若仍无效,清理工作负载缓存后重新恢复:

dotnet workload clean
dotnet workload restore

4. 极端情况:重置VS模板

如果以上步骤均无效,重置VS的项目模板:

  1. 打开VS2022,点击工具 -> 导入和导出设置 -> 重置所有设置,选择否,仅重置设置,从而覆盖我的当前设置,选择默认配置完成重置。
  2. 再次执行dotnet new update更新模板。

验证方法

完成上述操作后,重新新建.NET MAUI项目,查看.csproj中的目标框架是否默认使用net9.0-*,构建项目确认是否仍有工作负载报错。

内容的提问来源于stack exchange,提问作者Prince

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 18:56:01