希望返回一个自定义错误页面而不是黄色屏幕,以查找WebApi项目中的错误,这是在管道的早期发生的。
我已经替换了默认的IExceptionHandler。
处理比Exception过滤器更多的错误,它不会处理
但是,并非所有异常都通过替换IExceptionHandler
来处理E.g。如果我在Application_BeginRequest中抛出一个错误(只是管道中早期出现错误的一个例子),它就不会被这个拿起,我得到一个黄色的屏幕。启用自定义错误后,它会显示黄色屏幕,但仍为黄色屏幕。
如何处理所有错误(甚至在管道的早期),并使用正确的响应代码返回自定义JSON错误,就像自定义异常处理程序触发时一样。
一些文章 http://www.c-sharpcorner.com/article/exception-handling-in-asp-net-web-api/ https://www.exceptionnotfound.net/the-asp-net-web-api-exception-handling-pipeline-a-guided-tour/ https://www.jayway.com/2016/01/08/improving-error-handling-asp-net-web-api-2-1-owin/ (我没有使用OWIN,但包含在内作为参考)
我可以捕获Global.asax Application_Error事件中的错误
答案 0 :(得分:0)
您可以做的是在global.asax中的application_error方法中返回带有空对象的json响应,或者使用参数0等。