小生QQB 2023-06-19 16:11 采纳率: 50%
浏览 15

C# 使用throw new Exception如何避免应用崩溃。

C# 使用throw new Exception 前能否判断外面套了try catch 结构,如果未套用,直接外抛异常,应用程序会崩溃,有什么解决方法吗?

  • 写回答

2条回答 默认 最新

  • 於黾 2023-06-19 16:47
    关注

    throw的意义就在于让错误抛出,让程序崩溃,这总比数据出错了还把错误的数据全塞进数据库里要好的多了
    如果你只是简单的if判断,那该如何显示异常信息呢,print到控制台吗,还是写入日志呢,都不如throw出去让外面处理,外面爱怎么处理是外面的事情
    外面当然可以不处理,就直接让程序崩溃,调试的时候完全可以这样做,这样代码会自动断点在出错的位置
    否则统一进入catch,你回头再找到底是哪句报错是很困难的
    当你把能预测的错误都处理的差不多了,需要再预防无法预测的错误导致崩溃,再加try不迟
    -=-=-=-=
    当然还有一种思路,是类似tryparse函数,不管什么情况都不会导致抛异常,而是将异常作为返回值返回,外面再去判断这个返回值(当然也可以不判断直接丢弃)

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月19日

悬赏问题

  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥15 复杂网络,变滞后传递熵,FDA
  • ¥20 csv格式数据集预处理及模型选择
  • ¥15 部分网页页面无法显示!
  • ¥15 怎样解决power bi 中设置管理聚合,详细信息表和详细信息列显示灰色,而不能选择相应的内容呢?
  • ¥15 QTOF MSE数据分析
  • ¥15 平板录音机录音问题解决