一、介绍
后台数据是通过二个基于某种CLR 类型的对象来承载的,当客户端调用某个Action 方法并希望以JSON 的格式返回请求的数据时, ASP.NET MVC 中
System.Web.Mvc.J sonResult将CLR 对象转换成JSON 格式予以响应;
返回JsonResult 类型,通过调用Json()方法返回Json格式数据到试图
二、源代码分析
public class JsonResult : ActionResult
{
public override void ExecuteResult(ControllerContext context);
public object Data { get; set; }
public Encoding ContentEncoding { get; set; }
public string ContentType { get; set; }
public JsonRequestBehavior JsonRequestBehavior { get; set; }
public int? MaxJsonLength { get; set; }
public int? RecursionLimit { get; set; }
}
public enum JsonRequestBehavior
{
/// <summary>
/// 支持HTTP-GET请求
/// </summary>
AllowGet,
/// <summary>
/// 不支持HTTP-GET请求
/// 默认类型
/// </summary>
DenyGet
}
Data属性:一个object 类型的属性,表示需要被转换成JSON 格式的数据对象;
ContentEncoding:表示为当前响应设置的编码方式;
ContentType:表示为当前响应设置的媒体类型(默认采用的媒体类型为"applicaion/json");
JsonRequestBehavior属性:开启对HTTP-GET