Json序列化
1,使用DataContractJsonSerializer可以将对象序列化为Json数据,下面是这个类帮手:
View Code
public static class JsonUtil { /// <summary> /// 最简单的Json序列化 /// </summary> /// <returns>序列化后的Json对象</returns> public static string ToJson1(this object obj) { //命名空间using System.Web.Script.Serialization; JavaScriptSerializer serialize = new JavaScriptSerializer(); return serialize.Serialize(obj); } /// <summary> /// Json序列化 /// </summary> public static string ToJson(this object item) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(item.GetType()); using (MemoryStream ms = new MemoryStream()) { serializer.WriteObject(ms, item); StringBuilder sb = new StringBuilder(); sb.Append(Encoding.UTF8.GetString(ms.ToArray())); return sb.ToString(); } } #region Json反序列化 /// <summary> /// Json反序列化 /// </summary> public static T FromJsonTo<T>(this string jsonString) { DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T)); using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString))) { T jsonObject = (T)ser.ReadObject(ms); return jsonObject; } } #endregion #region Json序列化 /// <summary> /// 日期Json序列化 /// </summary> public static string ToJson2(this object item) { IsoDateTimeConverter timeConverter = new IsoDateTimeConverter(); timeConverter.DateTimeFormat = "yyyy'-'MM'-'dd"; return JsonConvert.SerializeObject(item, timeConverter); } #endregion }