JsonHelper.cs 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // ***********************************************************************
  2. // <summary>json序列化帮助类</summary>
  3. // ***********************************************************************
  4. using Newtonsoft.Json;
  5. using Newtonsoft.Json.Converters;
  6. namespace SysBaseLibs
  7. {
  8. public class JsonHelper
  9. {
  10. public static JsonHelper Instance { get; } = new JsonHelper();
  11. public string Serialize(object obj)
  12. {
  13. return JsonConvert.SerializeObject(obj, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });
  14. }
  15. public string SerializeByConverter(object obj, params JsonConverter[] converters)
  16. {
  17. return JsonConvert.SerializeObject(obj, converters);
  18. }
  19. public T Deserialize<T>(string input)
  20. {
  21. if (string.IsNullOrWhiteSpace(input))
  22. {
  23. return default(T);
  24. }
  25. return JsonConvert.DeserializeObject<T>(input);
  26. }
  27. public T DeserializeByConverter<T>(string input,params JsonConverter[] converter)
  28. {
  29. return JsonConvert.DeserializeObject<T>(input, converter);
  30. }
  31. public T DeserializeBySetting<T>(string input, JsonSerializerSettings settings)
  32. {
  33. return JsonConvert.DeserializeObject<T>(input, settings);
  34. }
  35. //private object NullToEmpty(object obj)
  36. //{
  37. // return null;
  38. //}
  39. }
  40. }