Visual Studio 会记住之前调试会话中的断点,这非常棒。
但是,当我调试时,我通过单击其中一个“旧”断点来清除它,它只是暂时删除。我的意思是,下次调试时,我认为已删除的断点又回来了。
这太烦人了——有没有一个设置可以让它不这样做?
转到
Debug
菜单,然后 Delete All Breakpoints
Ctrl+Shift+F9
问题是断点的子断点仍然存在。在调试会话期间设置断点时(在某些情况下)会创建子断点。
删除断点(及其子断点)的可靠方法是在断点窗口中手动查找它,然后从那里删除它。 (选择条目的顶部节点,点击 Delete。)
如果您运行的是支持 VBScript 宏的(旧)Visual Studio 版本,则可以运行here(在调试会话之间)发布的宏,以删除子断点。这将使通过单击字形来删除断点更加有效和可预测,但它仍然存在问题和尴尬。
这里有一些答案,但在我看来,建议的操作在调试过程中会分散注意力(我不想失去焦点)。
我在断点期间粘性断点的流程如下:
在调试期间,DISABLE断点而不是删除它。
禁用断点的可能方法:
后来,在开发过程中,当我看到一个禁用的断点时,我会删除它。
PS。偶尔删除所有断点也是一个很好的做法。
大多数断点可以在调试会话期间删除,但有些断点会卡住(可能是 Visual Studio 中的错误)。
如果您只想删除卡住的断点,请使用调试菜单上的“断点”窗口。在那里,您可能会看到同一行的断点存在多次。只需右键单击并删除它即可。
Visual Studio 2017 给我带来了这个老问题的快速替代答案。
如果可能,只需剪切并粘贴带有断点的代码即可。断点随着剪切而消失。
转到“调试”>“窗口”>“断点”并找到断点并将其从窗格中删除。
因为已回答这里
我认为这是一个设计缺陷,非常令人沮丧,而且我们长期以来不得不忍受这一点。我们经常这样做,以至于它变成了常态。到目前为止给出的解决方案确实可行。
更好的解决方案是聚集在一起投票支持 Visual Studio 用户之声的更改。这似乎已经被记录了几次,所以我们应该选择一个来投票。
两个步骤(第一步很重要!):
Shift + F5
如果您正在调试 Web 应用程序并在 Chrome 中设置断点,VS Code 将遵循该断点并且不会让您删除它。换句话说,有效断点是 VS Code 和 chrome 中设置的断点之和。是的,有时很容易忘记您在 chrome 中设置了断点,并迷失在试图找出如何从 VS Code 中删除它的过程中。