文章列表
 
您正在查看 "json.net学习笔记" 分类下的文章

2010-12-25 22:28

通常当用到大的Json文档的时候,你可能只对其中的一小个片段信息感兴趣。这种情况下你想把Json.Net转换为.Net 对象就会让人很困扰,因为你必须为Json的整个结果定义一个.Net的类。

使用Json.Net很容易避开这个问题。在把它们传递到Json.Net序列化器之前,你可以使用Linq to Json 提取Json中你想要序列化的一些片段。

 string googleSearchText = @"{
                  ""responseData"": {
   

 
2010-12-25 18:43

当序列化.Net对象为Json对象时经常会遇到的一个问题是:最终的Json包含大量多余的属性和属性值。这个问题在返回Json到客户端时显得特别重要。Json越大意味着需要更大的带宽,使网速变得更慢。

为了解决多余的Json这个问题,Json.Net有一系列内置的选项可以进行调整。

->JsonIgnoreAttribute and DataMemberAttribute

默认情况下,在Json创建的时候Json.Net会包含所有类级别的public属性和字段。添加JsonIgnoreAttribute到属性上,告诉序列化器序列化时跳过它。

 public class Car

 
2010-12-25 17:15

IContractResolver接口提供了一种方法去定制序列化器如何去序列化和反序列化.Net对象为Json对象

实现IContractResolver接口,然后为Json序列化器分配一个实例对象,这样你就可以控制对象是否被序列化为Json对象或者Json数组、对象的成员应该被序列化成什么、如何被序列化、及他们被谁调用等。

->DefaultContractResolver

   DefaultContractResolver是序列化器默认的解析器,它以虚函数的形式提供了很多扩展功能,可以被覆写(overriden).

->CamelCasePropertyNamesContractRes

 
2010-12-20 22:03

CustomCreationConverter是一个在序列化过程中提供自定方式去创建一个对象的Json转换器,一旦对象被创建,它将被序列化器填充值。

 public interface IPerson
    {
        string FirstName { get; set; }
        string LastName { get; set; }
        DateTime BirthDate { get; set; }
    }

   

 
2010-12-20 20:47

默认情况下,Json.Net将通过对象的值来序列化它遇到的所有对象。如果工个list包含两个Person引用,这两个引用都指向同一个对象,Json序列化器将输出每一个引用的所有名称和值。

定义类:

  public class Person
    {
        public DateTime BirthDate { get; set; }
        public DateTime LastModified { get; set; }
        public string Name { get; set;

 
   
 
 
文章存档
 
     
 
最新文章评论
  

这套课程,总结的蛮好的哈,加油
 

SearchResult 请问这个类,您是怎么定义的呀?谢谢
 

回复记忆永恒清晨:很久不弄那个了,不太清楚了.没用过ARM9
 

我也需要一份完整的工程文件,发邮箱:boy_11914789@126.com,谢谢你了
 

你那有没有适合ARM9的 GSM 发送短信的代码啊,发我份完整的吧 邮箱:zigewb@126.c
   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu