2010-03-09 46 views
0

如何获得控制器级的错误处理:ASP MVC - 获取控制器级别的错误处理

这是我的地图路线:

routes.MapRoute(
    "Default",            // Route name 
    "{controller}/{action}/{id}",       // URL with parameters 
    new { controller = "Home", action = "Index", id = "" } // Parameter defaults 
); 

而且我有2个控制器 - HomeController的和AwayController

我希望两个控制器都能处理它们自己的错误

例如,致电

/主页/ InvalidAction将通过一种方法来处理

/客场/ InvalidAction将通过其他方法来处理

凡InvalidAction目前导致404,因为没有行动的方法使用该名称

回答

1

您可以在控制器中覆盖OnUnknownAction方法,以便在没有匹配操作方法的情况下向控制器发出请求时捕获该方法。您还可以覆盖OnException以捕获控制器操作方法中抛出的未处理的异常。

Andrew