@Html.ActionLink in ASP.NET MVC 3
本文关键字:MVC NET ASP ActionLink in @Html | 更新日期: 2023-09-27 18:36:35
我在.cshtml中的操作链接是这样的:
@Html.ActionLink("Reply", "Post_Reply", new { item.ID, item.Post_ID, item.Reply_ID })
我在控制器中的方法如下所示:
[Authorize]
public ActionResult Post_Reply(int PostId=0, int Id = 0, int ReplyId = 0)
{
post posts = new post();
posts.ID = Id;
return View(posts);
}
但只有 item.ID 的值被传递,其他两个值项。Post_ID和项目。Reply_ID没有通过。.谁能指导我..谢谢。。
看起来你对@Html.ActionLink
使用了错误的重载:
尝试:
@Html.ActionLink("Reply", "Post_Reply", new { Id = item.ID, PostId = item.Post_ID, ReplyId = item.Reply_ID }, null)
问题是,当您将参数值添加到操作链接时,您还必须添加 Html 属性,请使用以下命令:
@Html.ActionLink("Reply", "Post_Reply", new { Id = item.ID, PostId = item.Post_ID, ReplyId = item.Reply_ID }, null)
为 Html 属性添加Null
值将允许发送正确的参数
试试
@Html.ActionLink("Reply", "Post_Reply", new { Id = item.ID, PostId = item.Post_ID, ReplyId = item.Reply_ID })
您的问题是您传递的匿名对象不包含变量名称,因此它不会映射到您的 Action 参数上。