加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – MVC默认重定向错误页面并不总是显示

发布时间:2020-12-16 09:51:26 所属栏目:asp.Net 来源:网络整理
导读:我在我的MVC应用程序中有一个自定义错误页面只是?/ error /但是当我在Web.Config中打开自定义错误时如下: customErrors mode="On" defaultRedirect="~/error/" / 它只适用于400错误而不是服务器端500错误,而是在白页上给我以下错误消息: “很抱歉,在执行您
我在我的MVC应用程序中有一个自定义错误页面只是?/ error /但是当我在Web.Config中打开自定义错误时如下:

<customErrors mode="On" defaultRedirect="~/error/" />

它只适用于400错误而不是服务器端500错误,而是在白页上给我以下错误消息:

“很抱歉,在执行您的要求时发生了一个错误.”

如何才能将每个错误都转到defaultRedirect页面?

解决方法

MVC应用程序本身应该处理500个错误. web.config定义的自定义错误用于500个错误以外的错误.

基本上,您需要使用RegisterGlobalFilter方法(在global.asax中)将新的HandleErrorAttribute添加到过滤器集合(您将名称视图用于HandleErrorAttribute中的错误),然后创建一个视图作为其模型系统.Web.Mvc.HandleErrorInfo.没有控制器可以处理这些错误或将模型发送到视图,因此您不能只是重定向到错误页面.

您可以在http://community.codesmithtools.com/CodeSmith_Community/b/tdupont/archive/2011/03/01/error-handling-and-customerrors-and-mvc3-oh-my.aspx获取更多信息.

编辑有一种替代方法,其中所有错误都通过MVC处理,如How do I display custom error pages in Asp.Net Mvc 3?所示.基本上,您在global.asax文件中设置受保护的void Application_Error()来处理所有错误,而无需通过web.config.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读