use*_*401 0 c# exception-handling
我正在处理用户在循环中提交的表单,以防表单提交失败(由于许多原因可能导致失败:错误的数据,无法识别的字符,数据库错误和其他未知数),我想记录此错误以及用户和表单详细信息,然后继续下一个用户/表单.
我目前正在使用包含泛型catch的try catch块,但我从许多人那里听说捕获泛型异常是一件坏事(因为异常可能是stackoverflowexception或outofmemoryexception).但我不确定如何避免捕获这些致命的例外情况.我在寻找建议.
我正在编辑此问题,以根据回复添加更多上下文.
为什么我要捕获所有异常:因为我不希望一个表单的处理失败以影响循环中的其他表单.
为什么我要捕获特定的异常:我理解我可以查找stackoverflowexception,outofmemoryexception等...但我的观点是,可能有很多...寻找每一个都会使我的代码冗长.我不确定这是否是最好的过程.
小智 5
但我不确定如何避免捕获这些致命的例外情况
好吧,2件事.
首先,您可以随时重新抛出它们,例如,在记录之后.
其次,你可以捕获你想要的每个异常,如果你没有捕获System.Exception,那么所有你没有捕获的东西都会冒出来 - 对于初学者来说就是C#101,所以如果你有问题,那么回到阅读有关的文档一般例外.
| 归档时间: |
|
| 查看次数: |
590 次 |
| 最近记录: |