@ Html.ActionLink如何添加查询字符串

时间:2013-02-05 10:07:57

标签: asp.net-mvc asp.net-mvc-3 razor

我需要使用MVC和Razor在View中设置查询字符串。

这是我的代码

Controller: Home
ActionResult: Daily
QueryString: DateForLookUp 

@Html.ActionLink("Next Day", "Daily", "Home", new { @DateForLookUp = @Model.AddOneDay() })

目前的结果是

http://mysite.com/Home/Daily?lenght=4

应该是

http://mysite.com/Home/Daily?DateForLookUp=01/01/2014

我在这里做错了什么?

1 个答案:

答案 0 :(得分:22)

Html.ActionLink有很多overloads

您正在使用wrong overload将您的控制器名称"Home"解释为路由值。

正确的overload / sysntax之一是:

@Html.ActionLink(
    "Next Day", //linkText
    "Daily", //actionName
    "Home", //controllerName
     new { @DateForLookUp = @Model.AddOneDay() }, //routeValues
     null //htmlAttributes
)