10

我正在调试一个foreach将迭代超过 1000 次的循环 - 所以我只希望循环中的断点为特定项目中断。

所以...

foreach(Employee employee in employees)
{
//DO SOMETHING
//BREAK HERE WHEN employee.Id == '2342'
//DO SOMETHING ELSE
}

我是否必须在其中编写一个If语句和一些虚拟代码并以这种方式破坏它?那是唯一的方法吗?

4

5 回答 5

22
if (employee.Id == '2342') Debugger.Break();

或者,您可以在 VS 中设置条件断点,但根据我的经验,这非常慢。

于 2012-07-02T08:52:38.213 回答
8

如果您使用的不是 VS 的 express 版本,请右键单击断点并单击设置条件。

我个人会使用这种方法,因为我认为修改代码来调试它是不好的做法。

否则,您将被迫按照自己的方式行事。

于 2012-07-02T08:54:34.623 回答
5

只是添加到以前的答案。使用条件断点。

在此处输入图像描述

您可以指定如下条件
在此处输入图像描述

于 2014-04-02T11:07:14.520 回答
3

通过 UI 使用带有条件断点的 VS 调试器。

简单最快的方式imo。

终极 Visual Studio 提示和技巧博客

于 2012-07-02T08:55:51.753 回答
2

您可以在 Visual Studio 中使用条件断点。

右键单击断点并选择条件,然后放入您的子句。

于 2012-07-02T08:54:32.313 回答