我在VS2015中调试我的项目,并且在我的代码中抛出异常。 当我尝试设置下一个语句时,我收到下面显示的错误消息。当我在VS2013中调试相同的解决方案时,我能够设置下一个语句没有任何问题。这种行为似乎发生在多种异常中。
我可以重现问题的示例代码如下所示。当TestMethod1
中的最后一行抛出异常时,我可以很容易地回到VS2013中的第一个语句,但不会回到VS2015中。
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
object o = new object();
o = null;
var e = o.ToString();
}
}
答案 0 :(得分:6)
在“异常设置”中,您需要为正在抛出的特定CLR异常类型启用Break Thrown,或者<此列表中不包含的所有公共语言运行时异常>用于自定义例外。在此特定示例中,启用JSONArray jsonArray = new JSONArray(ids);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject ques_obj = jsonArray.getJSONObject(i);
JSONObject question = ques_obj.getJSONObject("question");
JSONArray q = question.getJSONArray("qclasslist");
JSONArray f = question.getJSONArray("focuslist");
JSONArray l = question.getJSONArray("latlist");
for (int a = 0; a < q.length(); a++) {
JSONObject q_obj = q.getJSONObject(a);
text = q_obj .getString("value");
}
for (int b = 0; b < f.length(); b++) {
JSONObject f_obj = f.getJSONObject(b);
text = f_obj.getString("value");
}
for (int c = 0; c < l.length(); c++) {
JSONObject l_obj = l.getJSONObject(c);
text = l_obj.getString("value");
}
JSONArray jArray1 = question.getJSONArray("evidencelist");
for(int d = 0; d < jArray1 .length(); d++)
{
JSONObject object3 = jArray1.getJSONObject(d);
text = object3.getString("text");
}
}
应该允许您按预期设置下一个语句。
如果您希望在不破坏所有未列出的CLR例外的情况下中断特定的自定义例外,则可以将它们添加到“例外设置”中的列表中并相应地进行选择。
我在MSDN上询问了这个问题,并从那里传递信息。 [Source]