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

Breakpoint not fully highlighted when debugging

我遇到了一个奇怪的问题,当前遇到的断点没有完全突出显示,这导致它们只能被部分评估。见下图。调试器的声明 returns 为真。但是,调试器不会超过 'products',因此它会到达 if 语句的末尾。无论长度如何,它都可能发生在任何代码行上。另外,高亮消失的点是随机的,有时只会高亮第一个字母。

示例:

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

我试过以下方法:

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

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

您也可以尝试转到“调试”>“选项和设置”,再次选中 "Require source files to exactly match the original version" 和 building/running。这应该进一步确认您正在查看的内容与正在编译的内容不匹配。