繁体   English   中英

如何告诉调试器忽略抛出抛出的异常?

[英]How to tell the debugger to ignore breaking on thrown exceptions?

我有一个TextBox,我在其中使用第三方库验证输入。 但是,当语法不正确时,此库会引发自定义异常。 除了调试时,这不是什么大问题。

在调试时,由于TextBox中的文本始终是错误的(我还在键入它),调试器将在每个字母后停止,直到它正确,这真的很烦人,因为我验证每个字母。

如何告诉调试器不要破坏这些自定义异常?

PS我已经尝试过滤Debug - > Exceptions(在Common Language Runtime Exceptions添加它),但这对我不起作用。 调试器仍然在调用库的行停止。

PPS使用Visual Studio 2010。

对于非信徒

回答:

最后我和我的PS非常接近。 这是一个非常愚蠢的错误:我在命名空间中输入了一个拼写错误。 感谢Pop Catalin和Madhur Ahuja指出它!

Visual Studio中有一个“例外”窗口...在调试时尝试Ctrl-Alt-E并单击“Thrown”复选框以查看要停止的异常

您正在寻找相反的方式: Visual Studio:如何打破处理的异常?

Debug + Exceptions,单击Add Button。 将类型设置为“Common Language Runtime Exceptions”,将Name设置为自定义异常的全名,包括命名空间名称。 您现在可以取消勾选此Thrown框,必要时首先展开节点。

假设你想在意外发生异常时中断,你真的应该使用[System.Diagnostics.DebuggerHidden]方法从调试器中隐藏方法。

这对我[DebuggerHidden][DebuggerHidden]

这不是调试器中的错误,而是故意的改变。 虽然行为不同并且可能令人困惑,但必须在Visual Studio 2010中进行更改以支持其他几种方案,包括Silverlight调试。

  1. 对于您在此处遇到的异常类型,禁用“中断用户未处理的异常”(通过调试 - >异常)
  2. 对所有异常禁用“中断用户未处理的异常”(通过Debug - > Exceptions)

有关详细信息,请参阅此处的链接。

打破VS2010中的异常

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM