.NET 10 MAUI热重载失败:未找到GetProjectFullPathAsync方法
解决.NET 10 MAUI XAML热重载在macOS Tahoe/Xcode 26下失效的问题
问题现象
更新macOS Tahoe 26.0.1和Xcode 26后,.NET 10 MAUI项目的XAML热重载完全失效——修改XAML内容后应用无任何变化,输出日志报错:
ApplyChangesAsync called. An unexpected error has occurred, any pending updates have been discarded. ❌ Hot Reload failed due to an unexpected error. Exception found while applying code changes: Error: No method by the name 'GetProjectFullPathAsync' is found.
新建MAUI项目测试,问题依旧存在。环境配置为:macOS Tahoe 26.0.1、Xcode 26、.NET 10 SDK、VS Code C# Dev Kit、Xcode自带iOS模拟器。
可行解决方案
更新.NET 10 SDK至最新版本
.NET 10目前处于预览阶段,针对新系统和Xcode的适配补丁会持续推送。先运行dotnet --list-sdks查看当前SDK版本,下载安装官网最新的.NET 10 SDK,覆盖现有版本后重启VS Code,重新加载项目测试。重置C# Dev Kit扩展
在VS Code扩展面板找到C# Dev Kit,点击齿轮图标选择「禁用」,重启VS Code后再重新启用;或者直接卸载后重装最新版本,清除扩展缓存和可能的适配冲突。手动指定iOS SDK路径
Xcode 26可能调整了SDK默认路径,在项目的.csproj文件中添加以下配置,明确指定iOS SDK位置:<PropertyGroup> <IosSdkRoot>/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk</IosSdkRoot> </PropertyGroup>保存后重新生成项目,再测试热重载功能。
清理项目与工具缓存
- 删除项目根目录下的
bin和obj文件夹,重新生成项目; - 在VS Code中按
Cmd+Shift+P打开命令面板,执行「Clear Editor History」清除工作区缓存,重启VS Code; - 打开Xcode,进入「Window > Devices and Simulators」,选中当前使用的iOS模拟器,点击「Erase All Content and Settings」清除模拟器缓存。
- 删除项目根目录下的
切换到Visual Studio for Mac预览版测试
如果VS Code的C# Dev Kit适配滞后,可以尝试使用Visual Studio for Mac最新预览版,它对MAUI和新系统的适配通常更及时,能快速验证是否是工具链的适配问题。
内容的提问来源于stack exchange,提问作者Matan Yamin
相关产品推荐
相关产品推荐

