有条件的C#断点?

时间:2012-07-02 08:51:38

标签: c# debugging if-statement foreach breakpoints

我正在调试一个foreach循环,这个循环将迭代1000次以上 - 所以我只想在循环中使用断点来打破特定项目。

因此...

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

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

5 个答案:

答案 0 :(得分:22)

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

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

答案 1 :(得分:8)

如果您使用VS的快速版以外的任何其他内容,请右键单击断点并单击“设置条件”。

就个人而言,我会使用这种方法,因为我认为修改代码进行调试是不好的做法。

否则你被迫按照自己的方式去做。

答案 2 :(得分:5)

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

enter image description here

您可以指定如下所示的条件 enter image description here

答案 3 :(得分:3)

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

最简单最快方式imo。

The Ultimate Visual Studio Tips and Tricks Blog

答案 4 :(得分:2)

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

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