vij*_*all 7 .net c# asp.net-mvc html-helper asp.net-mvc-3
我在.cshtml中的操作链接是这样的:
@Html.ActionLink("Reply", "Post_Reply", new { item.ID, item.Post_ID, item.Reply_ID })
Run Code Online (Sandbox Code Playgroud)
我在控制器中的方法是这样的:
[Authorize]
public ActionResult Post_Reply(int PostId=0, int Id = 0, int ReplyId = 0)
{
post posts = new post();
posts.ID = Id;
return View(posts);
}
Run Code Online (Sandbox Code Playgroud)
但只有item.ID的值被传递,其他两个值item.Post_ID和item.Reply_ID没有被传递..任何人都可以指导我..谢谢..
看起来你使用了错误的重载@Html.ActionLink:
尝试:
@Html.ActionLink("Reply", "Post_Reply", new { Id = item.ID, PostId = item.Post_ID, ReplyId = item.Reply_ID }, null)
Run Code Online (Sandbox Code Playgroud)
问题是,当您将参数值添加到操作链接时,您必须还添加Html属性,使用此:
@Html.ActionLink("Reply", "Post_Reply", new { Id = item.ID, PostId = item.Post_ID, ReplyId = item.Reply_ID }, null)
Run Code Online (Sandbox Code Playgroud)
添加NullHtml属性的值将允许发送正确的参数
尝试
@Html.ActionLink("Reply", "Post_Reply", new { Id = item.ID, PostId = item.Post_ID, ReplyId = item.Reply_ID })
Run Code Online (Sandbox Code Playgroud)
您的问题是您传递的匿名对象不包含变量名称,因此它不会映射到您的操作参数。
| 归档时间: |
|
| 查看次数: |
3406 次 |
| 最近记录: |