一、ExceptionFilterHandler 异常处理 只能捕获Action内的异常:

Api-Action 内 抛出异常:

二、ExceptionHandler (默认)全局异常处理组件 捕获全局异常:有上面的ExceptionFilterHandler话就捕获了action外的所有异常:

<>注意:ExceptionHandler全局默认异常组件,我们重写 扩展了以后 怎么使用呢?怎么生效呢?
因为是全局默认的错误处理组件(程序),所以不具备特性标签。和ExceptionFilterAtrribute配合使用,就行了,一个局部(Action,Controller),一个全局(ExceptionHandler)

测试了 一个 在全局ExceptionFilterAtrribute里抛出异常->

既然它可以捕获全部Action内的异常 ,那么自身发生了异常 没有try catch住的话 会被谁 拿住呢?
测试结果:就被我们全局异常处组件ExceptionHandler 捕获住了!
End
本文主要介绍了WebAPI中两种异常处理方式:ExceptionFilterHandler用于捕获Action内的异常,而ExceptionHandler作为全局异常处理组件,可以捕获所有未被Action内处理的异常。通过扩展ExceptionHandler,可以实现自定义的全局错误处理,并与ExceptionFilterAttribute配合使用,确保无论是局部还是全局的异常都能得到妥善处理。
2001

被折叠的 条评论
为什么被折叠?



