我有一个MVC 3.0路由问题。我在CheckListController类中有以下内容:
public ActionResult Index(int id)
{
//poop
return View("ChecklistControl");
}
然后,在容纳该控制器的AreaRegistration.cs中,我有以下内容:
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"CommonControls_defaultWithId",
"CommonControls/{controller}/{action}/{id}",
new { action = "Index", id = 0 }
);
context.MapRoute(
"CommonControls_default",
"CommonControls/{controller}/{action}",
new { action = "Index" }
);
}
但是,当我尝试通过http://localhost:2064/CommonControls/Checklist/1
浏览时我收到404错误,即使我已注册该路线。
任何想法?
答案 0 :(得分:0)
与该路由匹配的网址为http://localhost:2064/CommonControls/Checklist/Index/1
我认为你想要的是
context.MapRoute(
"CommonControls_defaultWithId",
"CommonControls/{controller}/{id}",
new { action = "Index", id = 0 }
);
答案 1 :(得分:0)
这两条路线似乎是一样的。删除后者,然后重试。