"抱歉,处理您的请求时出错"的直接原因和来源是什么?信息?

Ric*_*h C 10 error-handling asp.net-mvc

很多关于ASP.Net MVC错误的询问 "抱歉,处理您的请求时出错".不幸的是,我找不到任何真正讨论真实情况的东西.可以理解的是,他们关注的是潜在的错误,而不是消息的直接来源和原因.因此,这些解决方案为同一问题提供了广泛不同的答案

这里有一些例子:

基于我研究过的许多答案中的堆栈跟踪数据,似乎可以在System.Web.Mvc.ControllerActionInvoke类中触发.通常看起来是执行ActionResult方法中未处理错误的直接结果.

我想在邮件中理解"处理您的请求"这个术语.基于我看到错误显示的方式,这似乎不太可能是指HTTP请求.也许在MVC架构中更细粒度的东西?有人可以更清楚地了解这条消息的来源以及原因吗?

Ric*_*h C 13

开箱即用的ASP.Net MVC应用程序的默认错误处理将错误重定向到Error.aspx共享视图.您将在Error.aspx文件中找到"抱歉,处理您的请求时出错"消息文本.该消息不是从.Net类生成的.

以下SO问题让我明白: ASP.NET MVC HandleError无效(customErrors设置为"On")

要查看有关基础错误的更多详细信息,您可以选择一些选项.

  • 自定义默认的Error.aspx页面以显示有关基础错误的详细信息.

  • 关闭web.config文件中的CustomErrors.未来的错误应显示默认的ASP.Net"黄色屏幕"错误详细信息,而不是"抱歉,发生错误消息".

  • 在关联的ActionResult方法中专门处理错误.