针对 单个 对象移除属性,序列化时忽略处理
- JObject实例的 Remove() 方法,可以在 指定序列化时移除属性和值
using Newtonsoft.Json.Linq;//引用
//json 序列化
JObject obj1 = JObject.FromObject(new
{
id = 1,
name = "张三",
age = 20
});
//等效于JObject obj1 = JObject.FromObject(实体类)
Console.WriteLine(obj1.ToString());
//输出:
//{
// "id": 1,
// "name": "张三",
// "age": 20
//}
//指定忽略对象的属性
//注:指定的key区分大小写
obj1.Remove("id");
//obj.ToObject<实体类>();处理后转换成原来的实体类
Console.WriteLine(obj1.ToString());
//输出结果:
//{
// "name": "张三",
// "age": 20
//}
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; }