netframework 4.0内置处理JSON对象

xiaoxiao2021-02-28  20

前言

必须的是 .netframewoke 4.0的项目才能使用。

 

内容

1.项目添加System.Runtime.Serialization引用。

2.JsonHelper通用类的代码如下:

using System; using System.Text; //--------------------------using using System.Runtime.Serialization.Json; // 添加引用(.Net 4.0) System.Runtime.Serialization /// <summary> /// JSON辅助类 字符<==>对象(注意:字符里属性的大小写与对象的属性大小写必须保持一致) /// </summary> public class JsonHelper { #region 对象类型转换为json 字符 /// <summary> /// 对象类型转换为json 字符 /// </summary> /// <typeparam name="T">实体类型</typeparam> /// <param name="jsonObject">待转换实体</param> /// <param name="encoding">编码格式</param> /// <returns>string</returns> public static string ObjectToJson<T>(Object jsonObject, Encoding encoding) { string result = String.Empty; DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T)); using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) { serializer.WriteObject(ms, jsonObject); result = encoding.GetString(ms.ToArray()); } return result; } #endregion #region json字符转换为对象 /// <summary> /// json字符转换为对象 /// </summary> /// <typeparam name="T">实体类型</typeparam> /// <param name="json">json字符串</param> /// <param name="encoding">编码格式</param> /// <returns>T</returns> public static T JsonToObject<T>(string json, Encoding encoding) { T resultObject = Activator.CreateInstance<T>(); DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T)); using (System.IO.MemoryStream ms = new System.IO.MemoryStream(encoding.GetBytes(json))) { resultObject = (T)serializer.ReadObject(ms); } return resultObject; } #endregion }

 

结束

需要注意的是,字符里属性的大小写与对象的属性大小写,必须保持一致,才不会出现问题!

 

 

 

 

转载请注明原文地址: https://www.6miu.com/read-2350073.html

最新回复(0)