Cou*_*y D 3 c# exception-handling pragma
首先,我运行我的应用程序,异常抛出任何错误(处理与否).
其次我使用a TypeConverter
从用户输入字符串转换为实际对象.
第三个TypeConverter
没有提供任何TryConvert
方法,所以我不得不使用异常进行验证,在这里使用这个相当丑陋的代码:
try
{
this._newValue = null;
#pragma Magic_SuppressBreakErrorThrown System.Exception
this._newValue = this.Converter.ConvertFromString(this._textBox.Text);
#pragma Magic_ResumeBreakErrorThrown System.Exception
this.HideInvalidNotification();
}
catch (Exception exception)
{
if (exception.InnerException is FormatException)
{
this.ShowInvalidNotification(this._textBox.Text);
}
else
{
throw;
}
}
Run Code Online (Sandbox Code Playgroud)
我发现它有相当分散注意力VS破执行的每次我输入-
的-1
,或者一些其他的无效字符.我可以使用与此类似的东西,但不是我转换为所有类型的TryParse
方法.
我希望有一些方法可以在try
不改变我的异常设置的情况下禁用中断代码段.
Fan*_*ius 16
将try/catch放在自己的方法中,并在方法上设置此属性:
[System.Diagnostics.DebuggerNonUserCode]
Run Code Online (Sandbox Code Playgroud)
调试器不会在该方法内停止(即使对于断点).当方法完成时,异常已被处理,因此它也不会在那时中断.
Bri*_*sen -1
我不确定我是否完全理解您的问题,但如果您想在特定异常上禁用 VS 中断,您可以使用“异常”对话框 (ctrl-alt-e) 进行自定义。打开公共语言运行时异常树并深入到特定异常并将其关闭。FormatException 位于 System. 这样 VS 将在除 FormatException 之外的所有托管异常上中断。
归档时间: |
|
查看次数: |
2834 次 |
最近记录: |