当我调试C#程序并引发异常(由代码引发或由框架引发)时,IDE停止运行,并使我进入代码中的相应行。

现在一切都很好。

然后,我按“F5”继续。从这一刻起,就好像我陷入了无限循环。 IDE总是让我回到异常(exception)行。我必须按住Shift + F5键(停止调试/终止程序)才能离开他。

我在这里与一些同事交谈,他们告诉我,这有时也会发生在他们身上。

发生了什么?

最佳答案

这是因为未处理该异常,并且Visual Studio无法以某种方式对其进行处理而无法越过该行。简而言之,这是设计使然。

您可以做的一件事是将执行点(黄线/箭头)拖放到代码中的上一个点,并修改内存中的值(使用Visual Studio监视窗口),以使它们不会引起异常。然后再次开始单步执行代码1。

最好是停止执行并修复导致异常的问题,或者在不需要抛出异常的情况下正确处理异常,这是一个更好的主意。

1这可能会带来意想不到的后果,因为您实际上是在重新执行某些代码(而不是回退执行)。

关于c# - 发生异常后在Visual Studio调试器中继续,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/164433/

10-09 21:03