首页 新闻 会员 周边 捐助

关于asp.net mvc html.ActionLink

0
悬赏园豆:100 [已解决问题] 解决于 2012-02-15 14:22

关于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 个重载都试过了 都是没有合适的

 

SpeakHero的主页 SpeakHero | 初学一级 | 园豆:31
提问于:2012-02-15 13:42
< >
分享
最佳答案
1

你的环境是MVC哪个版本,在MVC3中这样写:

@Html.ActionLink("a","result","items",new{page=1,pagesize=50},null)

生成的HTML是:

<a href="/items/result?page=1&amp;pagesize=50">a</a>
收获园豆:100
artwl | 专家六级 |园豆:16736 | 2012-02-15 14:03

.net 4 mvc3

SpeakHero | 园豆:31 (初学一级) | 2012-02-15 14:14

谢谢 就是后面 null搞定

SpeakHero | 园豆:31 (初学一级) | 2012-02-15 14:21

@王嘉欣: 你改为这样试试:

@Html.ActionLink("查看", "result", "items", new { page = 1, pagesize = 50, techerName = HttpUtility.UrlEncode(item.TeachName.Trim(), System.Text.Encoding.UTF8) }, null)



artwl | 园豆:16736 (专家六级) | 2012-02-15 14:21
其他回答(1)
0

ActionLink方法在MVC2中和MVC3中相同。你把参数放反了,ActionLink的三个参数,第一个是a链接显示的文字,第二个参数是action的名称,第三个是参数。

LCM | 园豆:6876 (大侠五级) | 2012-02-15 14:08

 

上面打错了 我是这样写的   @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>

支持(0) 反对(0) SpeakHero | 园豆:31 (初学一级) | 2012-02-15 14:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册