在C#中,Newtonsoft.Json + dynamic动态解析jsonString,jsonString转实体
记录一下
引用
using Newtonsoft.Json; using Newtonsoft.Json.Linq;
var jsonString = "{\"ApiResources\": [{\"name\": \"name1\",\"Enabled\": true},{\"name\": \"name2\",\"Enabled\": true}]}"; JsonSerializerSettings jSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, DateFormatString = "yyyy-MM-dd HH:mm:ss" }; var jsonObject = JsonConvert.DeserializeObject<dynamic>(jsonString, jSetting); //dynamic动态解析 var apiResourcesStr = ""; if (((Newtonsoft.Json.Linq.JContainer)jsonObject).HasValues && ((Newtonsoft.Json.Linq.JContainer)jsonObject.ApiResources).HasValues) apiResourcesStr = jsonObject.ApiResources.ToString(); //jsonString 转 实体 var apiResources = new List<ApiResource>(); if (((Newtonsoft.Json.Linq.JContainer)jsonObject).HasValues && ((Newtonsoft.Json.Linq.JContainer)jsonObject.ApiResources).HasValues) apiResources = JsonConvert.DeserializeObject<List<ApiResource>>(jsonObject.ApiResources.ToString());
作者:陈哲Gilbert
出处:http://gilbert.cnblogs.com
版权声明:
本文版权归作者所有,欢迎转载,请在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。