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数据。
序列化示例
- Productproduct=newProduct();
- product.Name="Apple";
- product.Expiry=newDateTime(2008,12,28);
- product.Price=3.99M;
- product.Sizes=newString[]{"Small","Medium","Large"};
- Stringjson=JsonConvert.SerializeObject(product);
- Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json);
LINQ to JSON示例
- Stringjson=@"{
- ""Name"":""Apple"",
- ""Expiry"":newDate(1230422400000),
- ""Price"":3.99,
- ""Sizes"":[
- ""Small"",
- ""Medium"",
- ""Large""
- ]}";
- JObjecto=JObject.Parse(json);
- Stringname=(string)o["Name"];
- JArraysizes=(JArray)o["Sizes"];
- Stringsmallest=(string)sizes[0];
文档 Json.NET - 快速入门 & API文档[http://james.newtonking.com/projects/json/help/] (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|