最近我一直试图添加一个链接,允许人们在我的网站上删除自己的评论。我遵循了here提出的问题答案的建议。这就是我现在的代码:
@Html.ActionLink("x","DeleteComment", "Videos", new { commentID = 1234, actionReturnName = "[action]" })
然后我让控制器处理这里的值:
public ActionResult DeleteComment(int commentID, string actionReturnName)
{
DB.CommentDB.DeleteComment(commentID);
return RedirectToAction(actionReturnName);
}
这似乎是正确的方法,但我做错了什么? 我一直收到这个错误
2>'/'应用程序中的服务器错误。参数字典包含非可空类型'System.Int32'的参数'commentID'的空条目,用于方法'System.Web.Mvc.ActionResult DeleteComment(Int32,System.String)'
我可能会错过一些非常愚蠢的东西,但是如果你能帮助我那就太棒了!
答案 0 :(得分:3)
你使用了错误的重载。现在你将你的routeValues作为htmlAttributes传递。
传递一个额外的null作为htmlAttributes以调用正确的方法。
@Html.ActionLink("x","DeleteComment", "Videos", new { commentID = 1234, actionReturnName = "[action]" }, null)