2010-03-09 69 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