public class JSONHelper { /// <summary> /// 将对象序列化为JSON格式 /// </summary> /// <param name="o">对象</param> /// <returns>json字符串</returns> public static string SerializeObject(object o) { string json = JsonConvert.SerializeObject(o, Formatting.None, _jsonSerializerSettings); return json; } /// <summary> /// 解析JSON字符串生成对象实体 /// </summary> /// <typeparam name="T">对象类型</typeparam> /// <param name="json">json字符串</param> /// <returns>对象实体</returns> public static T DeserializeJsonToObject<T>(string json) where T : class { JsonSerializer serializer = new JsonSerializer(); /*******json设置*********/ //忽略默认值 serializer.DefaultValueHandling = DefaultValueHandling.Ignore; StringReader sr = new StringReader(json); object o = serializer.Deserialize(new JsonTextReader(sr), typeof(T)); T t = o as T; return t; } /// <summary> /// 解析JSON数组生成对象实体集合 /// </summary> /// <typeparam name="T">对象类型</typeparam> /// <param name="jsonString">json字符串</param> /// <returns>对象列表</returns> public static List<T> DeserializeJsonToList<T>(String jsonString) where T : class { JsonSerializer serializer = new JsonSerializer(); StringReader sr = new StringReader(jsonString); /*******json设置*********/ //忽略默认值 serializer.DefaultValueHandling = DefaultValueHandling.Ignore; //日期格式 object o = serializer.Deserialize(new JsonTextReader(sr), typeof(List<T>)); List<T> list = o as List<T>; return list; } [JsonIgnore] private static readonly JsonSerializerSettings _jsonSerializerSettings = new JsonSerializerSettings { Converters = new JsonConverter[] { new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" } } }; private static JsonSerializerSettings setJsonSerializerSettings() { JsonSerializerSettings jsonSerializerSettings = new JsonSerializerSettings(); jsonSerializerSettings.DefaultValueHandling = DefaultValueHandling.Ignore; //jsonSerializerSettings.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; return jsonSerializerSettings; } }