我有两条路线要映射到我的 ASP.NET MVC 应用程序中
- /用户登录
- /User/{userid}/{username}/{action}(例如 /User/1/blah/profile)
以下是我定义的路线:
routes.MapRoute(
"Profile",
"Users/{userID}/{username}/{action}",
new { controller = "Users", action = "Profile" }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
到目前为止,这在大多数情况下都非常有效。以下 URL 可在我的主页上使用:
<%= Html.ActionLink((UsersController x) => x.Login(), "Login") %>
<%= Html.ActionLink((UsersController x) => x.Profile(1, "blah") %>
这些映射到(恭敬地):
/Users/登录 /Users/1/blah
但是,一旦我导航到 /Users/1/blah,登录 url 立即变为 /Users/1/blah/login。知道如何解决这个问题吗?