提问人:user3844416 提问时间:10/27/2023 最后编辑:user3844416 更新时间:10/28/2023 访问量:40
捕获原始异常类型
Catching Original Exception type
问:
我想使用 catch 语句来捕获由低于当前级别的代码抛出的异常。
我正在使用此代码来捕获异常
catch (ArgumentException ex)
{
HelpFunc.writeToLog($"ArgumentException: '{ex.InnerException?.Message}'", "Error");
}
catch (Exception ex)
{
HelpFunc.writeToLog($"Exception: '{ex.InnerException?.Message}'", "Error");
}
请参阅此内容,了解我使用 InnerException 查找原始异常的原因
这很好用,但异常会作为一般异常而不是原始 ArgumentException 类型被选中。有没有办法通过原始抛出的异常来捕获?
答:
1赞
user3844416
10/28/2023
#1
啊,我找到了这个方法
catch (Exception ex) when (ex.InnerException is ArgumentException)
{
HelpFunc.writeToLog($"Inner Exception: Argument Exception: '{ex.InnerException?.Message}'", "Error");
}
这似乎捡起了它。
评论