我正在创建一个MVC4应用程序。 我有一个小问题。 我的代码是
<li id="tabHeader_2">@Html.ActionLink("Contract", "Contract", "Home", new { id = "lnk_contract" })</li>
我得到了网址
http://localhost:2355/Home/Contract?Length=4
我希望我的网址为
http://localhost:2355/Home/Contract
我的说法是
routes.MapRoute(
name: "Default",
url: "{controller}/{action}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
如果你有答案,请帮助我......
答案 0 :(得分:13)
您混淆了参数。您必须将匿名对象作为htmlAttributes参数发送。
@Html.ActionLink("Contract", "Contract", "Home", null ,new { id = "lnk_contract" })
以下是此重载的MSDN页面:
http://msdn.microsoft.com/en-us/library/dd504972(v=vs.108).aspx
答案 1 :(得分:1)
您需要添加参数
, new {}
到Html.ActionLink
。
第一个对象是查询字符串,第二个是HTML参数。