有一個MVC 2應用程序與缺省路由MVC2控制器不觸發默認操作時,URL指定唯一的目錄
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
這個偉大的工程,因爲我們有除了一個控制器的一切。當我們瀏覽到URL http:// myserver/ThisOneController它不會觸發Index操作並給出403.14禁止的錯誤。如果我衝浪到http:// myserver/ThisOneController/Index它工作正常!每個其他控制器顯示預期的行爲。
有問題的控制器有一個定義的索引操作方法,並且在IIS中查看該文件夾似乎沒有顯示該文件夾和其他文件夾之間的區別。它在我們的生產箱中工作,但不在我們的測試箱上......對於我的生活,我無法找到這些箱子之間的任何區別。
任何想法?
-1 - 這不完全正確;即使提供了部分路由,也會使用缺省值,所以'root/Home'將調用'HomeController.Index'動作,'root/Other'將調用'OtherController.Index'動作。您可以創建一個簡單的應用程序來確認。 –