我在C#应用程序中有一些地方没有捕获潜在的异常,但是在异常情况下崩溃之前有一个try-finally块来释放资源。
当我在Visual Studio中运行代码并发生异常时,它会在相应的行中断,将其标记为黄色并描述异常。
没关系。
但是在注意到并读取异常后,我希望我的应用程序能够保存(执行finally块)。这正是我在Visual Studio外部运行代码时会发生的情况。但是,当我按F5继续时,它会卡在那条线上,一遍又一遍地标记它。
我该怎么做才能告诉Visual Studio我希望应用程序继续=失败?
答案 0 :(得分:5)
您正在看到Visual Studio的异常助手功能。只要用户代码中存在未处理的异常,它就会显示以通知用户该问题。
不幸的是,在某些情况下,它无法消失,你会得到你所描述的行为。当这种情况发生时,这绝对是非常令人沮丧的。解决此问题的最佳方法是禁用异常助手。
答案 1 :(得分:1)
有时我发现我需要多次击中F5。我知道它会在异常经历的每个重新抛出或try-block上停止,因此它可能会重复,因为异常发生在库函数中,并在离开库函数之前通过几个try语句进行过滤。然而,VS只会多次显示库调用。不过,我从来没有真正陷入困境。点击F5几次会让它再次移动。
答案 2 :(得分:0)
如果对引发的异常类型有匹配的catch
语句,Visual Studio将在中断异常后继续运行。
但是,您可以通过转到Debug>完全关闭异常助手以获取特定异常。例外菜单并取消选中您要忽略的例外。