JsonResult or Json: which to use?
In ASP.NET MVC 3, which is more corre开发者_StackOverflow中文版ct to use: Json()
or new JsonResult()
? Either returns the same result. Thanks for helping solve an office debate.
Json()
is just an extension method that actually returns a JsonResult
object behind the scenes (rather than needing to call the constructor directly).
I almost always use the Extension Method myself. This keeps more in line with the other common return types from Action Methods like View()
, PartialView()
, etc.
I also make sure to create an extension method for any custom ActionResult types that I create. In the end it's a matter of personal preference.
If you a returning a large dataset as a data source for grid or other UI controls via Ajax, sometimes if this dataset is over 1000 records UI controls will not bind because of maximum Json length is not specified.
So instead of
return Json(data)
,
you can do this: return new JsonResult(Data = data, MaxJsonLength = 50000);
精彩评论