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

Visual Studio Xamarin调试报错:无法在指定代码块中断点调试

解决Xamarin Android中OnNavigationItemSelected调试时"No compatible code running on thread"问题

问题场景

使用Visual Studio 2022 Community 17.6.4开发Xamarin Android应用时,在OnNavigationItemSelected(IMenuItem item)方法中设置断点,反复触发"No compatible code running on thread"错误——代码实际会执行,但断点无法正常命中调试。已尝试以下操作均无效:

  • 启用"Enable Just My Code"
  • 在子函数设置断点
  • 回滚Visual Studio版本
  • 删除.vs/.bin/.obj文件夹并卸载平板端应用
  • 参考Stack Overflow相关方案
  • 新建Navigation Drawer App模板项目,在该方法设断点仍触发错误,且仅该方法存在此问题

可行解决方案

1. 强制加载调试符号

在调试会话中:

  • 打开调试 > Windows > 模块窗口
  • 找到对应Xamarin Android项目的程序集(通常是你的应用名.dll)
  • 右键点击该程序集,选择加载符号 > 从Microsoft符号服务器加载,等待符号加载完成后重新启动调试

2. 调整Android调试部署选项

  • 打开项目属性,进入Android选项 > 调试
  • 取消勾选使用快速部署(调试模式),重新生成项目并部署调试
  • 勾选启用调试器日志记录,查看调试器连接时的详细日志,排查符号不匹配或连接异常问题

3. 清理深层调试缓存

关闭Visual Studio后,删除以下路径的缓存文件:

  • C:\Users\<你的用户名>\AppData\Local\Xamarin
  • C:\Users\<你的用户名>\AppData\Local\Microsoft\VisualStudio\17.0_<随机字符>\ComponentModelCache
    重启Visual Studio后重新生成并调试

4. 切换调试目标架构

  • 在Visual Studio工具栏的调试目标下拉菜单中,切换为x86或x64(而非默认的Any CPU)
  • 确保平板设备的架构与调试目标匹配,重新部署应用测试

5. 修复Visual Studio安装

  • 打开Visual Studio Installer,选择修改,点击修复按钮,修复可能损坏的调试组件
  • 修复完成后重启Visual Studio,重新测试调试功能

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 01:57:01