问题 如何告诉Visual Studio在特定异常中不要破坏?


我有一个特殊类型的异常,我想要Visual Studio 没有打破 并显示Exception Assistant屏幕。基本上我想让我的正常异常处理基础设施处理它。

异常是我编写的System.Exception的继承者,并且有源代码。抛出它的任何地方我都希望VS不能捕获它,也就是说只是压一个新的BlahException();在代码中。这是因为抛出了很多异常,我不想单独压制每一个实例。

如果它有所作为,我在Visual Studio 2010 Ultimate,Framework 3.5 SP1上。


5156
2018-05-25 15:47


起源



答案:


转到“调试”菜单,然后选择“例外”。选择添加并输入您的例外。这将为您的例外添加一个复选框项。无论何时抛出异常,如果该复选框打开,调试器将暂停。在您的情况下,请确保取消选中此复选框。

但有一件事是你的异常仍会被抛出并被你实际代码中的任何try / catch块所捕获。


14
2018-05-25 15:52



@Pete:Yup纠正了。 - Brian R. Bondy
这很有趣,之前没见过那个屏幕。但是,我希望调试器不要暂停,如果你修改你的回复,我可以给你答案:) - Noel Kennedy
@Noel:更新了。 - Brian R. Bondy
是的,我想要的行为是我的try-catch块来处理异常,而不会弹出调试器。 - Noel Kennedy
在VS2015中,该面板位于Debug> Windows> Exception Settings下 - John Dvorak


答案:


转到“调试”菜单,然后选择“例外”。选择添加并输入您的例外。这将为您的例外添加一个复选框项。无论何时抛出异常,如果该复选框打开,调试器将暂停。在您的情况下,请确保取消选中此复选框。

但有一件事是你的异常仍会被抛出并被你实际代码中的任何try / catch块所捕获。


14
2018-05-25 15:52



@Pete:Yup纠正了。 - Brian R. Bondy
这很有趣,之前没见过那个屏幕。但是,我希望调试器不要暂停,如果你修改你的回复,我可以给你答案:) - Noel Kennedy
@Noel:更新了。 - Brian R. Bondy
是的,我想要的行为是我的try-catch块来处理异常,而不会弹出调试器。 - Noel Kennedy
在VS2015中,该面板位于Debug> Windows> Exception Settings下 - John Dvorak