using Newtonsoft.Json; using Newtonsoft.Json.Converters; namespace APT.Utility { public static class JsonHelper { /// /// 把对象序列化成Json字符串格式 /// /// /// public static string ToJson(object obj) { return JsonConvert.SerializeObject(obj); } public static string ToJsonForLog(object obj) { return JsonConvert.SerializeObject(obj, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); } /// /// 把Json字符串转换为强类型对象 /// public static T FromJson(string json) { return JsonConvert.DeserializeObject(json); } public static string Serialize(object obj) { return JsonConvert.SerializeObject(obj, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }); } public static string SerializeByConverter(object obj, params JsonConverter[] converters) { return JsonConvert.SerializeObject(obj, converters); } public static T Deserialize(string input) { return JsonConvert.DeserializeObject(input); } public static T DeserializeByConverter(string input, params JsonConverter[] converter) { return JsonConvert.DeserializeObject(input, converter); } public static T DeserializeBySetting(string input, JsonSerializerSettings settings) { return JsonConvert.DeserializeObject(input, settings); } private static object NullToEmpty(object obj) { return null; } } }