我有.net mvc3网站。我必须实现顶级菜单。每个菜单标签是导致他的动作并显示另一个view.This我现在有:Mvc3执行自定义操作链接
<ul id="menu">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("Products", "Products", "Home")</li>
<li>@Html.ActionLink("Pricing", "Pricing", "Home")</li>
<li>@Html.ActionLink("Our Team", "OurTeam", "Home")</li>
<li>@Html.ActionLink("Contact Us", "ContactUs", "Home")</li>
</ul><!-- /menu -->
这个观点是我的布局Html.RenderAction("Header", "Home");
(因为它必须出现在所有页面) 我需要实现自定义ActionLink。锚文本必须是:
<span>text</span><b>text</b>
“文本”是家庭(例如第一里的) 而目前的ActionLink必须添加类:“选定”的主播。
我该怎么做?请帮助
p.s 我可以添加此菜单为我的网站中的每个视图与“选定”类当前视图,但这不是很好的解决方案。
这是很好的解决方案。但我的菜单是局部视图,并从布局调用。所以HttpContext.Current.Request.RequestContext.RouteData.Values [“action”]。ToString()将始终返回此部分的名称,并且此名称将永远不会与当前操作名称匹配。 – 2012-01-29 10:07:17
调用类似于@ Html.Action( “MainMenu”,“菜单”)。比你做的逻辑和准备在控制器的视图 – Iridio 2012-01-29 10:08:45
我的错误我用var currentAction = htmlHelper.ViewContext.RouteData。GetRequiredString(“action”)而不是HttpContext.Current.Request.RequestContext.RouteData.Values [“action”]。ToString()。现在是工作。谢谢 – 2012-01-29 10:17:35