【发布时间】:2014-07-11 13:31:07
【问题描述】:
在我的路线文件中,我有这个设置:
routes.MapRoute(
name: "Stages", // Route name
url: "Stages/{action}", // URL with parameters
defaults: new { controller = "Tasks", action = "Index", taskTypeIds = new[] { TaskTypes.Stage } }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
现在的问题是我要定义两个主菜单项:
<li>@Html.RouteLink("Stages", "Stages")</li>
<li>@Html.ActionLink("Tasks", "Index", "Tasks")</li>
但是这两个输出的是相同的 URL:
/阶段
为什么会这样,我可以绕过它吗?
【问题讨论】:
-
您对这两种情况的期望是什么?
-
你期待什么输出?
-
我期待:/Tasks 和 /Stages 分别。
-
你是说
@Html.ActionLink("Tasks", "Index", "Tasks")实际上输出了一个指向/Stages的链接? -
我是!是的。我不太清楚为什么。
标签: c# asp.net asp.net-mvc asp.net-mvc-routing