原文 C# Newtonsoft.Json JObject移除属性,在序列化时忽略
一、针对 单个 对象移除属性,序列化时忽略处理
JObject实例的 Remove() 方法,可以在 指定序列化时移除属性和值
示例如下 :
- //json 序列化
- JObject obj1 = JObject.FromObject(new
- {
- id = 1,
- name = "张三",
- age = 20
- });
- Console.WriteLine(obj1.ToString());
- //输出:
- //{
- // "id": 1,
- // "name": "张三",
- // "age": 20
- //}
- //指定忽略对象的属性
- //注:指定的key区分大小写
- obj1.Remove("id");
- Console.WriteLine(obj1.ToString());
- //输出结果:
- //{
- // "name": "张三",
- // "age": 20
- //}
注 :1.属性移除仅对当前 对象的属性起作用
2.指定移除 的 key区分 大小写,移除的属性需要和属性 大小写一直
如想 删除二级数组对象的属性,可以参考 代码:
- JArray jarr = obj1.SelectToken("images") as JArray;
- if (jarr != null)
- foreach (JObject item in jarr)
- {
- item.Remove("id");
- }
二、使用 [Newtonsoft.Json.JsonIgnore()] ,属性标注用于忽略处理
- [Newtonsoft.Json.JsonIgnore()]
- public int ID { get; set; }
更多:
C# Newtonsoft.Json JObject合并对象整理
C# dynamic类型序列化和反序列化之Newtonsoft.Json