1. 程式人生 > >C# json字符串反序列化

C# json字符串反序列化

使用 字符 方法 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 = new
DataContractJsonSerializer(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字符串反序列化