【问题标题】:@Html.ActionLink how to add a query string@Html.ActionLink 如何添加查询字符串
【发布时间】:2013-02-05 18:16:50
【问题描述】:

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

这是我的代码

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

我在这里做错了什么?

【问题讨论】:

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


【解决方案1】:

Html.ActionLink 有很多 overloads

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

正确的overload/sysntax 之一是:

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

【讨论】:

  • 这解决了问题@Html.ActionLink("Next Day", "Daily", new { @DateForLookUp = @Model.AddOneDay() })
  • @GibboK 是的,如果不需要指定控制器,那么重载也可以工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-02-17
  • 2019-04-02
  • 1970-01-01
  • 2021-05-15
  • 1970-01-01
  • 1970-01-01
  • 2018-11-28
相关资源
最近更新 更多