在aspnet mvc中使用路由的路由名称的位置

时间:2010-05-19 12:13:41

标签: asp.net asp.net-mvc

我是aspnet mvc中的新路由..我有以下代码: 动作控制器


public ActionResult SchoolIndex()
{
    return View(SchoolRepository.GetAllSchools());
}

这是路由


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


当我在地址栏中输入“localhost / school”时,它会给出404错误,而不应该路由到我的“schoolIndex”操作

我已将路线名称作为“学校”使用?

1 个答案:

答案 0 :(得分:1)

您无法在URI中指定路由名称。

路线名称适用于例如Html.RouteLink()RouteLink允许您准确指定所需的路由,即使它不是您传递的参数的第一个匹配路由。

URI按顺序匹配。第一条匹配路线获胜。

阅读my post on routing了解更多细节。