【发布时间】:2013-12-08 16:21:56
【问题描述】:
Url.Encode 方法有点问题。
我正在尝试使用此 Url.encode(Url.Action(..)) 创建我的菜单。除非我想使用不同的控制器(例如从帐户控制器到我的家庭控制器),否则一切都很好。
这里是菜单
<ul>
<li id="Home"><a href="@Url.Encode(Url.Action("Index","Home"))">Home</a></li>
<li id="About"><a href="@Url.Encode(Url.Action("About","Home"))">About</a></li>
<li id="Tickets"><a href="@Url.Encode(Url.Action("Tickets","Home"))">Tickets</a></li>
<li id="Events"><a href="@Url.Encode(Url.Action("Events","Home"))">Events</a></li>
</ul>
<!--<ul>
<li id="Home">@Html.ActionLink("Home", "Index", "Home")</li>
<li id="About">@Html.ActionLink("About", "About", "Home")</li>
<li id="Tickets">@Html.ActionLink("Tickets", "Tickets", "Home")</li>
<li id="Events">@Html.ActionLink("Events", "Events", "Home")</li>
</ul>-->
comment 中的菜单是我在 Url.Encode 之前使用的菜单。
如果我在家,例如我去“关于”,我会得到这个链接:
> http://localhost:1211/%2fHome%2fAbout
但是,如果我在我的帐户控制器中并且想要转到同一页面,这就是结果:
> http://localhost:1211/Account/%2fHome%2fAbout
你可以看到它仍然在这个前面放置 /Account/。我该如何解决这个问题?
【问题讨论】:
标签: asp.net-mvc razor