zoukankan      html  css  js  c++  java
  • Json.Net组件指定/忽略序列化字段属性技巧知识点

      我们在用Json.Net序列化组件序列化类的时候,经常有这样的一个需求:指定被序列化类中的某些字段属性是要忽略的,或者是指定字段属性序列化

      比如下面这个类:

     public class Bar
        {
            public int ID { get; set; }
    
            public string Name { get; set; }
    
            public string Email { get; set; }
    
            public string Address { get; set; }
    
            public Baz Baz { get; set; }
        }
    
        public class Baz { 
            
        }

    我要序列化其中的属性ID,Name 忽略其他的怎么写呢

        [System.Runtime.Serialization.DataContract]
        public class Bar
        {
            [System.Runtime.Serialization.DataMember]
            public int ID { get; set; }
            [System.Runtime.Serialization.DataMember]
            public string Name { get; set; }
    
            public string Email { get; set; }
    
            public string Address { get; set; }
    
            public Baz Baz { get; set; }
        }

    其中DataMember特性就是说明该成员属性是指定被序列化的,与此同时,在类外还要加上DataContract序列化契约特性

    其实忽略的用法也一样,用的同程序集下的IgnoreDataMember特性

    我们这里讲的Json.Net,所以这个组件同样有这个功能

        public class Bar
        {
            [Newtonsoft.Json.JsonIgnore]
            public int ID { get; set; }
            [Newtonsoft.Json.JsonIgnore]
            public string Name { get; set; }
    
            public string Email { get; set; }
    
            public string Address { get; set; }
    
            public Baz Baz { get; set; }
        }
  • 相关阅读:
    Innodb存储引擎
    Innodb学习之MySQL体系结构
    C# sql查询数据库返回单个值方法
    Welcome To SWPUNC-ACM
    P2184 贪婪大陆 题解
    线上Java调优-Arthas入门
    JVM调优学习笔记
    RabbitMQ博文收藏
    System.Net.WebException: 远程服务器返回错误: (405) 不允许的方法。
    随机过程-Brown运动
  • 原文地址:https://www.cnblogs.com/ms27946/p/5687735.html
Copyright © 2011-2022 走看看