关于asp.net mvc html.ActionLink
怎么定义 到另外一个 control 的action 加参数 比如 :有两个页面A 和b 当前页面在b 现在 需要html.actionlink 到 a 的 result action 该action 有两个参数 page 和pagesize
如果我这样写 Html.ActionLink("result","a",new {page=1,pagesize=50,name="这里需要htm编码"} 页面生成的 是
<a href="result?length=1">a</a>
10 个重载都试过了 都是没有合适的
你的环境是MVC哪个版本,在MVC3中这样写:
@Html.ActionLink("a","result","items",new{page=1,pagesize=50},null)
生成的HTML是:
<a href="/items/result?page=1&pagesize=50">a</a>
.net 4 mvc3
谢谢 就是后面 null搞定
@王嘉欣: 你改为这样试试:
@Html.ActionLink("查看", "result", "items", new { page = 1, pagesize = 50, techerName = HttpUtility.UrlEncode(item.TeachName.Trim(), System.Text.Encoding.UTF8) }, null)
ActionLink方法在MVC2中和MVC3中相同。你把参数放反了,ActionLink的三个参数,第一个是a链接显示的文字,第二个参数是action的名称,第三个是参数。
上面打错了 我是这样写的 @Html.ActionLink("查看", "Index", "a",new { techerName = @HttpUtility.UrlEncode(item.TeachName.Trim(), System.Text.Encoding.UTF8) })
生成的页面 为 <a href="当前页面?length=1">a</a>
而我需要的页面是 <a href="../home/result?page=1&size=10&techername="name"">查看</a>