c# - 调试时断点未完全突出显示

标签 c# visual-studio debugging breakpoints

我遇到了一个奇怪的问题,即当前命中的断点没有完全突出显示,这导致它们仅被部分评估。见下图。调试器所在的语句返回 true。但是,调试器不会越过“产品”,因此它会到达 if 语句的末尾。无论长度如何,它都可能发生在任何代码行上。此外,突出显示下降的点是随机的,有时它只会突出显示第一个字母。

例子: enter image description here

我为此项目使用附加到进程(在所有 w3wp.exe 实例上)。当不调试时,整行都会高亮显示。

我尝试了以下方法:

  • 清理和重建项目
  • 删除 bin 和 obj 文件夹并重新启动 VS
  • 删除所有断点并重置一两个
  • 重启电脑
  • 删除 .SUO 文件
  • 在这个有点类似的 topic 中尝试解决方案

我不确定我在这里遗漏了什么。

最佳答案

当 Visual Studio 逐步执行编译后的代码时,IDE 中显示的源代码不匹配,就会发生这种情况。除此之外,生成的 pdb 会告诉 VS 一行代码的长度,以便在断点处正确突出显示它; “不完整的突出显示”表示 VS 正在执行与指示的实际行长度不同的代码行。您需要彻底清理并重建所有内容。我知道您表示您尝试过,但有些东西仍然存在或未正确构建。

您也可以尝试转到“调试”>“选项和设置”,选中“要求源文件与原始版本完全匹配”,然后再次构建/运行。这应该进一步确认您正在查看的内容与正在编译的内容之间存在不匹配。

关于c# - 调试时断点未完全突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33309285/

相关文章:

c++ - 在 C++ 中调试非链接头文件

c# - 如何对从 Task.ContinueWith 衍生出来的方法进行单元测试?

c++ - 如何从其他 C++ 项目构建和运行 visual studio-8 中的 C++ 项目?

c# - 如何将要在某些 XElement 上执行的操作作为参数传递?

SQL Server Management Studio -- 工具/导入和导出设置菜单在哪里?

visual-studio - 在计算机之间共享 Visual Studio 项目

android - 在 bluestacks 应用程序播放器上通过 eclipse 调试 android 应用程序

c++ - 在 Windows 10 上使用 D3D11 调试层和 VS2013

C# Web浏览器锚定

c# - AppDomain.CreateInstanceFromAndUnwrap - 无法转换透明代理