为什么我不能从catch块调用方法?

时间:2019-11-19 09:01:24

标签: c# exception

我正在尝试调用从catch块返回错误页面的方法,但它根本不会调用该方法。

try
{
  pt1 = arr[1]; 
  pt2 = arr[2];
}
catch (IndexOutOfRangeException e)
{
  ce.StackTrace =  e.StackTrace;
  Error();
}

此处ce是对模型的引用,该模型保存与异常相关的属性,而Error()IActionResult类型的函数,该函数返回错误页面(.cshtml)。

1 个答案:

答案 0 :(得分:1)

也许您很幸运,并且数组中包含三个元素。

此外,您可能会遇到其他种类的异常,您不会捕获,因为您仅捕获IndexOutOfrangeException

为确保引发此异常,请尝试访问-1处的元素,即arr[-1]

此外,如alreay所述,请尝试在catch内设置断点以查看是否执行了代码。