我的ASP.NET MVC网站中有一些自定义错误处理 - >似乎工作正常。
我有一个错误控制器,如下所示: -
/Controller/ErrorController.cs
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Unknown()
{
Response.StatusCode = (int)HttpStatusCode.InternalServerError;
return View("Error");
}
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult NotFound()
{
Response.StatusCode = (int)HttpStatusCode.NotFound;
return View("Error");
}
(我还删除了其他一些文字,比如要显示的信息等。)
视图位于..
/Views/Error/Error.aspx
现在,我不确定在发生错误时如何“调用”Unknown
方法(上图)。我以为我可以使用[HandleError]
属性,但这只允许我指定一个视图(我不认为我正在这样做,导致错误网址真的很奇怪)。
答案 0 :(得分:0)
[HandleError]属性允许您为控制器类中的未处理异常指定错误页面,而不是ASP.NET提供的默认自定义错误处理。 我宁愿使用传统的ASP.NET自定义错误处理,除非在某些控制器中你想要默认的自定义错误行为。
<customErrors mode="On" defaultRedirect="~/Error/Unknown">
<error statusCode="404" redirect="~/Error/PageNotFound"></error>
<error statusCode="500" redirect="~/Error/Server"></error>
<error statusCode="503" redirect="~/Error/Server"></error>
</customErrors>