升级VS2022 v17.7.5后MAUI项目编译遇MauiWinUIApplication不存在错误
解决MAUI编译错误CS0234: 找不到'Microsoft.Maui.MauiWinUIApplication'
1. 修复项目文件的TargetFrameworks定义
你提供的项目文件中,Windows相关的TargetFrameworks条件行存在语法不完整问题,这可能导致MSBuild解析异常,误引入Windows相关依赖。请修正项目文件的<TargetFrameworks>节点:
若不需要Windows目标,直接保留以下内容即可:
<TargetFrameworks>net7.0-ios;net7.0-maccatalyst</TargetFrameworks>
若需保留Windows的条件编译(仅在Windows系统下添加该目标),补全完整语法:
<TargetFrameworks>net7.0-ios;net7.0-maccatalyst</TargetFrameworks> <TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('windows'))">$(TargetFrameworks);net7.0-windows10.0.19041.0</TargetFrameworks>
2. 清理项目缓存并重建
- 关闭Visual Studio,手动删除项目目录下的
bin和obj文件夹 - 重新打开项目,依次执行清理解决方案(生成→清理解决方案)和重建解决方案(生成→重建解决方案)
3. 确认MAUI SDK版本匹配
VS2022 17.7.5对应的.NET MAUI SDK版本应为7.0.109(适配.NET 7),请确保项目与VS安装的SDK版本一致:
- 右键项目→属性→应用程序,检查目标框架为
.NET 7.0,且MAUI SDK版本正确 - 若版本不匹配,打开Visual Studio安装程序→修改→单个组件,勾选对应版本的.NET MAUI组件重新安装
4. 验证启动目标与生成配置
- 在VS顶部启动目标下拉菜单中,明确选择
iOS模拟器或Mac Catalyst目标,避免误选Windows相关选项 - 右键项目→属性→生成,确认当前配置(Debug/Release)下仅勾选iOS和Mac Catalyst目标平台
5. 重置Visual Studio组件缓存
若以上步骤无效,可尝试重置VS用户数据缓存:
- 以管理员身份打开命令提示符,执行:
devenv /resetuserdata
- 重启Visual Studio后重新加载项目
内容的提问来源于stack exchange,提问作者Steve H
相关产品推荐
相关产品推荐

