我正在 Visual Studio 中使用 C# 调试 ASP.NET 网站。当我设置断点时(在调试期间),随着时间的推移,创建的断点将累积许多子断点。 (参见 here 。)
现在,有时当我通过单击红色字形删除断点时,下一次执行该行时仍会命中断点,因为子断点仍然存在。
在断点窗口中删除断点将解决问题,但是当你设置了很多断点时找到正确的断点是很烦人的。此外,删除具有许多子级的断点是一个非常缓慢的操作。
那么问题来了,我可以禁用这个子断点的创建,还是有办法快速删除所有子断点?
替代解决方案表示赞赏!
请注意,这不是这个的副本:Question on how to remove a Visual Studio Breakpoint ,因为我在问如何处理子断点。 (尽管我们的预期目标是相同的。)
最佳答案
下面的代码可以作为一个宏来移除所有的子断点。
Sub RemoveChildBreakpoints()
Dim i As Integer
Dim len As Integer
Dim debugger As EnvDTE.Debugger = DTE.Debugger
Dim children As EnvDTE.Breakpoints
For Each bp As EnvDTE.Breakpoint In debugger.Breakpoints
children = bp.Children
len = children.Count
For i = len To 1 Step -1
children.Item(i).Delete()
Next
Next
End Sub
如果你有很多断点,它仍然非常慢,所以如果你遇到子断点问题,最好定期运行它。
关于c# - 禁用/删除子断点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7993568/