在MVC 5中创建故障转移路由

时间:2014-01-07 07:50:33

标签: asp.net-mvc-routing asp.net-mvc-5 mvcroutehandler

如果找不到任何找到的Url,我希望将它发送到我的“Home”控制器。我的意思是像Like SomeDomain / ThisIsNotAController / Goober / adsfasdf1?spacerocket传递的总垃圾网址。 404错误让很多人感到困惑。

如果所有其他路线都失败,如何将路线映射到主页/索引。我知道你可以在Rails中做到这一点。 提前致谢。是的,我确实搜索了这个,但我想我不知道该要求什么

TW

1 个答案:

答案 0 :(得分:1)

您可以在web.config文件中使用自定义错误,方法是在控制器中指定一个操作方法...

public ActionResult NotFound(string aspxerrorpath)
{
    LogManager.Current.LogError(aspxerrorpath);
    Response.StatusCode = 404;
    return View();
}

像往常一样创建视图,然后在web.config文件中添加自定义错误元素...

<customErrors allowNestedErrors="true" mode="On">
   <error statusCode="404" redirect="~/Your_Controller/NotFound"/>
</customErrors>