使用DataContractJsonSerializer进行JSON序列化的JSONHelper类
发布时间:2020-12-16 19:21:55 所属栏目:百科 来源:网络整理
导读:public static class JSONHelper{/// summary/// 将对象转化为Json字符串/// /summary/// typeparam name="T"对象类型/typeparam/// param name="instanse"对象本身/param/// returnsJSON字符串/returnspublic static string SerializerT(this T instanse){t
public static class JSONHelper { /// <summary> /// 将对象转化为Json字符串 /// </summary> /// <typeparam name="T">对象类型</typeparam> /// <param name="instanse">对象本身</param> /// <returns>JSON字符串</returns> public static string Serializer<T>(this T instanse) { try { DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(T)); using (MemoryStream ms = new MemoryStream()) { js.WriteObject(ms,instanse); ms.Flush(); ms.Seek(0,SeekOrigin.Begin); StreamReader sr = new StreamReader(ms); return sr.ReadToEnd(); } } catch { return String.Empty; } } /// <summary> /// 将字符串转化为JSON对象,如果转换失败,返回default(T) /// </summary> /// <typeparam name="T">对象类型</typeparam> /// <param name="s">字符串</param> /// <returns>转换值</returns> public static T Deserializer<T>(this string s) { try { DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(T)); using (MemoryStream ms = new MemoryStream()) { StreamWriter sw = new StreamWriter(ms); sw.Write(s); sw.Flush(); ms.Seek(0,SeekOrigin.Begin); return (T)js.ReadObject(ms); } } catch { return default(T); } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |