using Newtonsoft.Json; using Newtonsoft.Json.Converters; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Net6Demo_Api.Util { public static partial class Extention { /// /// 将对象序列化成Json字符串 /// /// 需要序列化的对象 /// public static string ToJson(this object obj) { var timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }; return JsonConvert.SerializeObject(obj, timeConverter); } /// /// 将对象序列化成Json字符串(需传入时间格式) /// /// 需要序列化的对象 /// 时间格式 /// public static string ToJson(this object obj, string datetimeformats) { var timeConverter = new IsoDateTimeConverter { DateTimeFormat = datetimeformats }; return JsonConvert.SerializeObject(obj, timeConverter); } /// /// 将Json字符串反序列化为对象 /// /// 对象类型 /// Json字符串 /// public static T? ToObject(this string jsonStr) { return string.IsNullOrEmpty(jsonStr) ? default(T) : JsonConvert.DeserializeObject(jsonStr); } /// /// 将Json字符串反序列化为对象 /// /// json字符串 /// 对象类型 /// public static object? ToObject(this string jsonStr, Type type) { return JsonConvert.DeserializeObject(jsonStr, type); } } }