C# json字符串反序列化
阿新 • • 發佈:2017-08-05
使用 字符 方法 new style col tty ado json.js
使用情景:開發中JS傳遞一個Json格式的字符串到後臺,後臺將json字符串轉化成list集合
1 public static class json 2 { 3 public static List<T> JSONStringToList<T>(this string JsonStr) 4 { 5 JavaScriptSerializer Serializer = new JavaScriptSerializer(); 6 List<T> objs = Serializer.Deserialize<List<T>>(JsonStr);7 return objs; 8 } 9 10 public static T Deserialize<T>(string json) 11 { 12 T obj = Activator.CreateInstance<T>(); 13 using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json))) 14 { 15 DataContractJsonSerializer serializer = newDataContractJsonSerializer(obj.GetType()); 16 return (T)serializer.ReadObject(ms); 17 } 18 } 19 }
封裝一個json靜態類,裏面定義了兩個靜態方法,使用json反序列化的時候只需要調用第一個方法即可:json.JSONStringToList<T>(string jsonString)
T:類型 jsonString:為json字符串
這段代碼要添加幾個引用:
1 using System.Web.Script.Serialization;2 using System.IO; 3 using System.Text; 4 using System.Runtime.Serialization.Json;
C# json字符串反序列化