如果global.asax Application_Start()中发生错误,则将Json返回给用户

时间:2015-12-29 12:28:16

标签: c# json asp.net-mvc

我需要向用户显示使用json格式在我的服务器上发生了什么样的错误。我已经在动作过滤器的帮助下成功完成了这项工作。

但是如果异常发生在用户(我的意思是Web客户端)请求之外(例如在Application_Start()方法中),则用户发出任何请求将获得显示错误信息的html页面。

服务器尝试启动每个请求(每个请求调用Application_Start),但请求本身未正确处理并显示错误页面。

Exception方法中的Application_Start中的{p> Application_ErrorRequest方法捕获。但我不明白如何正确处理它。

在这种情况下,

Request对象为null,因为在应用程序调用方法Application_Start()时没有任何Application_Start

当MVC应用程序在{{1}}方法中出现异常时,有没有办法发送有关错误的用户 Json 信息?

谢谢!

1 个答案:

答案 0 :(得分:0)

我最终在web.config中设置了默认重定向。

<customErrors mode="On" defaultRedirect="/errors/500.json"></customErrors>

并使用静态内容创建了500.json文件。