Json.NET概述

前端之家收集整理的这篇文章主要介绍了Json.NET概述前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

  Json.NET库可以使JavaScript和.NET交换JSON格式的数据变得很简单,使用JsonReader和JsonWriter能快速地读写JSON,或使用JsonSerializer来序列化.NET对象。

CodePlex上的Json.NET[http://www.codeplex.com/json]
Json.NET下载[http://www.codeplex.com/json/Release/ProjectReleases.aspx]

特性

  • LINQ to JSON;
  • JsonSerializer可以序列化和反序列化.NET对象为JSON;
  • Json.NET可以格式化JSON为缩进显示
  • JsonIgnore和JsonProperty属性可以加到类中,来自定义如何序列化;
  • Json.NET可以将JSON和XML来回转换;
  • Json.NET支持.NET,Silverlight和Compact Framework。

  当JSON和.NET类之间的映射关系很紧密的时候,采用JSON序列化器可以自动地读写JSON。

  在诸多情况下,比如你只关心JSON中的数据,而不想和class转来转去,或者JSON和class的定义结构不一样,以致必须手工读写你的object。这时你可以使用LINQ to JSON,因为LINQ to JSON可以让你方便地读、写和修改JSON数据。

序列化示例

 
 
  1. Productproduct=newProduct();
  2. product.Name="Apple";
  3. product.Expiry=newDateTime(2008,12,28);
  4. product.Price=3.99M;
  5. product.Sizes=newString[]{"Small","Medium","Large"};
  6. Stringjson=JsonConvert.SerializeObject(product);
  7. //{
  8. //"Name":"Apple",
  9. //"Expiry":newDate(1230422400000),
  10. //"Price":3.99,
  11. //"Sizes":[
  12. //"Small",
  13. //"Medium",
  14. //"Large"
  15. //]
  16. //}
  17. Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json);

LINQ to JSON示例

 
 
  1. Stringjson=@"{
  2. ""Name"":""Apple"",
  3. ""Expiry"":newDate(1230422400000),
  4. ""Price"":3.99,
  5. ""Sizes"":[
  6. ""Small"",
  7. ""Medium"",
  8. ""Large""
  9. ]}";
  10. JObjecto=JObject.Parse(json);
  11. Stringname=(string)o["Name"];
  12. //Apple
  13. JArraysizes=(JArray)o["Sizes"];
  14. Stringsmallest=(string)sizes[0];
  15. //Small

文档 Json.NET - 快速入门 & API文档[http://james.newtonking.com/projects/json/help/]

猜你在找的Json相关文章