我似乎无法弄清楚如何自定义处理此错误。我的端点定义如下:
[HTTPGET] public ActionResult Test(){...}
如果我尝试POST到此端点,则会抛出http 405错误,这是正确的。问题是我想提供自定义错误页面而不是IIS默认页面。我试过打破global.asax中的application_error方法,但它永远不会被调用,我尝试在web.config中添加<customErrors />
部分,但无济于事。
有什么建议吗?
答案 0 :(得分:1)
您使用的是MVC3吗?如果是这样,请注意
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
你的global.asax中的。
此过滤器将捕获控制器中抛出的任何异常并使其成为500响应代码。然后它会尝试找到一个名为“Error”的视图。对此进行注释,customErrors将按预期工作。
另外,仔细检查您正在使用的操作方法或控制器上的[HandleError]属性。