Json.Net的介绍与简单实用兼容2.0/3.0/3.5/4.5/RT

本文的前提是你已经熟悉Json,如果您还不知道什么是Json是什么,请自行查看维基百科

一、Json.Net是什么?

  Json.Net是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Net环境下使用Json更加简单。通过Linq To JSON可以快速的读写Json,通过JsonSerializer可以序列化你的.Net对象。让你轻松实现.Net中所有类型(对象,基本数据类型等)和Json的转换。

  点击下载

二、为什么使用Json.Net?

我们知道在.Net中内置了读写Json的对象(DataContractJsonSerializer,JavaScriptSerializer),为什么我们还要用Json.Net呢?

在功能上:


特性 Json.Net DataContractJsonSerializer JavaScriptSerializer
Json 支持 支持
Bson 不支持 不支持
Json Schema .Net 2.0 .Net 3.5 .Net 4.0 Silverlight Windows Phone Windows 8 Metro Linq to Json Indented Json(有换行格式的Json) Json和XML转换 序列化DataTable和DataSet 序列化Entity Framework 不支持
















在性能上:



三、简单实例

以下就json常用的方法给大家做一个简单的例子:

JavaScriptConvert.SerializeObject:将对象转换为josn字符串

 Productproduct =newProduct();


product.Name ="Apple";
product.Expiry =newDateTime(2008,12,28);
product.Price = 3.99M;
product.Sizes =newstring[] {"Small","Medium","Large"};
string json = JavaScriptConvert.SerializeObject(product);

Newtonsoft.Json.JavaScriptConvert.DeserializeObject:根据json字符串反序列化得到对象。


ProductdeserializedProduct = (Product)JavaScriptConvert.DeserializeObject(output,typeof(Product));

其中的output就是一个json字符串,而product是要反序列化的类对象 通过这两个常用的方法,就可以很方便的从json字符串得到对象和从对象得到json字符串。

相关文章

AJAX是一种基于JavaScript和XML的技术,能够使网页实现异步交...
在网页开发中,我们常常需要通过Ajax从后端获取数据并在页面...
在前端开发中,经常需要循环JSON对象数组进行数据操作。使用...
AJAX(Asynchronous JavaScript and XML)是一种用于创建 We...
AJAX技术被广泛应用于现代Web开发,它可以在无需重新加载页面...
Ajax是一种通过JavaScript和HTTP请求交互的技术,可以实现无...