小编bcu*_*uzz的帖子

MVC HandleError返回错误500并查看错误页面

我正在使用VSC10的MVC 3并试图让[HandleError]工作.我在控制器中创建了一个测试来模拟崩溃,如下所示:

[HandleError]
public ActionResult Crash()
{
    throw new ApplicationException();
}
Run Code Online (Sandbox Code Playgroud)

还进入了web.config并添加了:

<customErrors mode="on" />
Run Code Online (Sandbox Code Playgroud)

如果我从Chrome运行,MVC将返回Shared/Error.aspx中的视图,因此这项工作正常.

如果我从IE 8运行,我得到它友好的错误页面("网站无法显示页面,最有可能的原因:......你可以尝试......").我进入IE工具并关闭"显示友好的HTTP错误消息"并再次运行,IE显示我的Error.aspx视图.显然我无法让用户更改此设置,但至少我知道我的Error.aspx正在返回.

所以我运行Fiddler,当我使浏览器转到我的Crash方法时,它显示即使MVC返回我的Error.aspx视图,它也会返回500结果.这会导致IE认为它有错误并使用友好页面覆盖我的页面.

我认为MVC应该返回结果200与我的Error.aspx页面而不是500.任何人都可以给我一些关于尝试什么的想法?

asp.net-mvc handleerror

3
推荐指数
1
解决办法
2856
查看次数

标签 统计

asp.net-mvc ×1

handleerror ×1