本文的前提是你已经熟悉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字符串。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。