【发布时间】:2016-04-12 05:17:06
【问题描述】:
/// <summary>
/// Get collection of movies as json.
/// </summary>
/// <returns></returns>
public ActionResult GetAllMovies1s()
{
// db-> DBContext
// Get the collection of movies.
var movies = db.Movies.ToList();
return Json(movies);
}
/// <summary>
/// Get collection of movies as json.
/// </summary>
/// <returns></returns>
public JsonResult GetAllMovies2()
{
// db-> DBContext
// Get the collection of movies.
var movies = db.Movies.ToList();
return Json(movies);
}
我对此有点新手,以上两种方法返回json数组以查看以获取电影JSON结果到Ajax调用。我知道以上两种方法可以完成这项工作。但我想知道witch方法是其中更好?我认为 ActionResult 比 JsonResult 好,因为我听说当我们编写函数时返回更通用的返回类型总是好的(JsonResult 是 ActionResult 的创建版本)。所以请专家帮助我澄清从中选择一个好的?(抱歉英语不好)
请伙计们在将其复制为重复之前请正确阅读该问题我已经知道 ActionResult 是 JsonResult 的更通用版本。我的问题是知道女巫通常最好以干净的编码和性能方式完成工作。 ..等等
【问题讨论】:
-
两者给出完全相同的结果,但使用
JsonResult可以更清楚地知道方法的返回类型是什么。 -
斯蒂芬,你的意思是第二个更好,因为它更干净是唯一的一点?丹尼斯,我认为你没有正确理解我的问题。
-
我个人更喜欢它,因为它准确地指定了方法的意图是什么 - 即它将返回 json。但这真的取决于个人喜好。
-
重复:stackoverflow.com/questions/15250941 根据@StephenMuecke 对答案的评论
-
ActionResult 只不过是一个抽象类。这取决于一些程序员是否遵循所有的 ActionResult 以及一些指定确切的结果类型。
标签: c# asp.net-mvc