在使用 html.ActionLink 时候遇到链接错误的情况。
我的代码是这样的:
@Html.ActionLink("Home2", "Index", "Home") @Html.ActionLink("About2", "About", "Home") @Html.ActionLink("Contact2", "Contact", "Home") @Html.ActionLink("用户中心2", "Index", "Center", new { area = "user",id=123,sex=1 }, null)
在 Layout 添加以上几个 ActionLink ,我的目的是生成一些 a 表情,链接到 几个页面,其中有一个是 center area 的index 页面
现在的问题是,以上几个html 在 网站 area 以外生成的链接是正确的,如下:
<a href="/">Home2</a> <a href="/Home/About">About2</a> <a href="/Home/Contact">Contact2</a> <a href="/User/Center/Index/123?sex=1">用户中心2</a>
问题来了,当我进入用户中心后,链接就变成这样了
<a href="/User/Home">Home2</a> <a href="/User/Home/About">About2</a> <a href="/User/Home/Contact">Contact2</a> <a href="/User/Center/Index/123?sex=1">用户中心2</a>
每个链接前边都自动添加了 User,也就是说,我一旦进入 area,就再也无法通过链接跳转出来了。我尝试将写法这样改:
@Html.ActionLink("Home2", "Index", "Home",null,null) @Html.ActionLink("About2", "About", "Home",null,null) @Html.ActionLink("Contact2", "Contact", "Home",null,null) @Html.ActionLink("用户中心2", "Index", "Center", new { area = "user",id=123,sex=1 }, null)
和这样改:
@Html.ActionLink("Home2", "Index", "Home", new { area = "" }, null) @Html.ActionLink("About2", "About", "Home", new { area = "" }, null) @Html.ActionLink("Contact2", "Contact", "Home", new { area = "" }, null) @Html.ActionLink("用户中心2", "Index", "Center", new { area = "user", id = 123, sex = 1 }, null)
都无法达到我的目的,请教各位大虾,我应该怎么写?谢谢了。
最后一种写法是对的,应该可以达到你的目的。
事实上,以上几种写法都无法生成正确的链接。
@西安-DB: 你可以看看这个问题http://q.cnblogs.com/q/35246/
跟你的问题一样的。
@webaspx: 不一样,那个问题是 从 area 外边跳进去。我是从里边跳出来。从外边跳进去我那个“用户中心2”是正常的。
不用这个了