ObjectExtension.cs 904 B

123456789101112131415161718192021222324252627282930313233343536
  1. using System;
  2. using System.ComponentModel;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Text.Encodings.Web;
  6. using System.Text.Json;
  7. using System.Text.Json.Serialization;
  8. using System.Text.Unicode;
  9. public static class ObjectExtension
  10. {
  11. public static string ToJsonStr(this object obj)
  12. {
  13. return Newtonsoft.Json.JsonConvert.SerializeObject(obj);
  14. }
  15. public static T JsonStrToObj<T>(this string obj)
  16. {
  17. return Newtonsoft.Json.JsonConvert.DeserializeObject<T>(obj);
  18. }
  19. /// <summary>
  20. /// 将源对象通过Json序列化为一个新对象
  21. /// </summary>
  22. /// <typeparam name="T">返回对象泛型类型</typeparam>
  23. /// <param name="obj">源对象</param>
  24. /// <returns></returns>
  25. public static T To<T>(this object obj)
  26. {
  27. var str = obj.ToJsonStr();
  28. var objNew = str.JsonStrToObj<T>();
  29. return objNew;
  30. }
  31. }