什么是JSON ?净?MVC已经有了一种将对象转换为json的方法
What is JSON.NET for? MVC already has a way to convert objects to json
我查看了JSON。. NET网站,但我没有得到它…我已经有了这样的代码。
string[] invalidFiles = new string[] { "one.xls", "two.xls", "three.xls" };
return Json(new
{
Status = "OK",
InvalidFiles = invalidFiles
});
将对象转换为json…所以我研究了JSON。NET和那似乎做同样的事情?我错过了什么?这是JSON的一个简单例子。NET可以做我可以用
做的事protected internal JsonResult Json(object data);
? ?
对于MVC 4中的Web API,默认的序列化器是json.net库,但是当从标准控制器返回JsonResult时,在MVC 4中使用的默认序列化器是JavascriptSerializer。你可以创建一个自定义Json result,并在标准控制器中重写Json方法来使用Json。. Net库。
要使用json.net,你可以先创建一个自定义结果:
public class JsonNetResult : JsonResult
{
public override void ExecuteResult(ControllerContext context)
{
if (context == null)
{
throw new ArgumentNullException("Controller Context");
}
HttpResponseBase response = context.HttpContext.Response;
if (ContentEncoding != null)
{
response.ContentEncoding = ContentEncoding;
}
var jsonData = JsonConvert.SerializeObject(Data);
response.ContentType = !string.IsNullOrEmpty(ContentType)
? ContentType
: "application/json";
response.Write(jsonData);
}
}
然后在基本控制器方法中重写json方法并返回json,就像你现在做的那样:
protected override JsonResult Json(object data, string contentType, Encoding contentEncoding, JsonRequestBehavior behavior)
{
return new JsonNetResult() {
Data = data,
ContentType = contentType,
ContentEncoding = contentEncoding
};
}
相关文章:
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 只能存储一种类型的对象的数组
- ES6 const,用于在JavaScript中创建对象原型;这是一种模式吗
- 如何访问对象's成员通过另一种方法填充的方法
- 有没有一种简单的方法可以用包含id和名称(从a到Z)的对象填充数组
- 有没有一种方法可以创建一个对象并同时为其指定一个动态特性
- 有没有一种快捷方式可以让我用javascript或jQuery设置对象的字段
- 有没有一种方法可以将javascript对象视为JSON
- 有没有一种方法可以获得用{}初始化的对象的原型
- 有没有一种方法可以访问上一个链中的jQuery对象
- 有没有一种方法可以在一次调用中修改每个jquery对象的特定属性
- 有没有一种方法可以强制浏览器's窗口对象以重新评估鼠标所在的位置
- 有没有一种方法可以做简单的“;类“;使用javascript中的对象进行继承
- 一种JavaScript,可在文档就绪时自动点击flash对象
- 有没有一种方法可以修改jQuery对象本身
- 当区域设置设置为另一种语言时,如何从 momentjs 对象获取英语值
- 基于 html5 数据属性值创建 JavaScript 对象是否是一种好的做法
- 寻找一种在javascript中对对象数组进行排序的方法
- 在Javascript中,有没有一种方法可以用一个语句创建一个索引对象数组
- 另一种在PageLoad上使对象的定时淡入效果的方法