我对Mvc框架以及JavaScript和JQuery都很陌生。我正在尝试理解构建Ajax调用的正确方法。
假设我有一个“投票”按钮,类似于您在StackOverflow上看到的内容。当用户点击它时,我需要更新数据库中的投票计数并将新值返回给UI。目前我通过在“PostsController”上使用一个名为“VoteUp”的动作来实现这一目的,该动作采用“int postID”作为参数。
public PostsController : Controller
{
public ActionResult VoteUp(int postId)
{
//Increment Post Vote Count
return Json(voteCount); //Return just the new vote count as a JSon result.
}
}
然后我通过调用url“http://mydomain.com/posts/voteUp?postId=5”通过ajax调用此方法。然后我返回一个带有新值的JSon ActionResult来用。更新UI。
这是实现这个的正确方法吗?同样,我对javascript和jquery都是全新的。我习惯于在asp.net webforms中作为click事件处理程序执行所有操作。任何指导都将不胜感激。
答案 0 :(得分:12)
答案 1 :(得分:3)
我会使用jQuery和JsonResult Controller来解决这个问题。您的jQuery代码将调用JsonResult,它将相关信息传递给模型代码以处理添加新投票。我写了一篇关于类似概念的简短教程,可以在http://www.dev102.com/2008/08/19/jquery-and-the-aspnet-mvc-framework/
找到