在我想要制作的应用程序中,我的视图中有一个菜单如下:
<ul id="menu">
<li>@Html.ActionLink("Create Project", "Display", "CreateDisplay")</li>
<li>@Html.ActionLink("Open", "About", "Home")</li>
</ul>
其中CreateDisplay是控制器的名称,Display是该控制器中将调用另一个视图的方法。
但是,我希望Display方法接受某些参数,例如人的用户名。
在当前视图中,我已获得用户名@ViewData["UserName"]
但是我无法使用ActionLink传递这些值。 我尝试将参数传递为
<li>@Html.ActionLink("Create Project", "Display?UserName="+@ViewData["UserName"], "CreateDisplay")</li>
但收到例外。
请建议一些方法。
非常感谢你。
答案 0 :(得分:2)
您需要使用接受路由值参数的重载。 See the overloaded method ActionLink()
here
@Html.ActionLink(
"Click me!",
"Display",
"CreateDisplay",
new { UserName = "SetYourValHere" },
null);