0

最近我一直在尝试添加一个链接,允许人们在我的网站上删除他们自己的评论。我已遵循此处提出的问题的答案的建议。这就是我的代码现在的样子:

@Html.ActionLink("x","DeleteComment", "Videos", new { commentID = 1234, actionReturnName = "[action]" })

然后我让控制器在这里处理这些值:

public ActionResult DeleteComment(int commentID, string actionReturnName)
{
    DB.CommentDB.DeleteComment(commentID);

    return RedirectToAction(actionReturnName);
}

这似乎是正确的方法,但我做错了什么?我不断收到此错误

“/”应用程序中的服务器错误。

参数字典包含方法“System.Web.Mvc.ActionResult DeleteComment(Int32, System.String)”的不可空类型“System.Int32”的参数“commentID”的空条目

我可能会错过一些非常愚蠢的东西,但如果你能帮助我,那就太好了!

4

1 回答 1

3

您使用了错误的重载。现在,您将 routeValues 作为 htmlAttributes 传递。

传入一个额外的 null 作为 htmlAttributes 以调用正确的方法。

@Html.ActionLink("x","DeleteComment", "Videos", new { commentID = 1234, actionReturnName = "[action]" }, null)
于 2012-07-05T17:06:55.477 回答