2009-08-01 132 views
9

我在此形式的JSON字符串變量類型JSON數組:反序列化使用DataContractJsonSerializer

string jsonStr = "[\"A\", [\"Martini\", \"alovell\"],[\"Martin\", \"lovell\"]]" 

我試圖使用C#的.NET解串器DataContractJsonSerializer用下面的代碼片斷

MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonStr)); 
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof<X>); 
X data = (X)serializer.ReadObject(ms); 
反序列化JSON

現在因爲JSON數組是一個變量類型的數組我不知道什麼類型的對象 X應該是

如果m Ÿ字符串是

jsonStr = "[[\"Martini\", \"alovell\"],[\"Martin\", \"lovell\"]]" 

我可以用這個:

X = List<List<String>> 

而且會爲我工作。我想知道是否有任何方法來反序列化變量類型的JSON數組?

回答

8

您可以使用Json.NET來做到這一點。

JArray a = JArray.Parse(jsonStr); 

根據JSON,JArray將包含字符串或嵌套的JArray。

+0

我使用這個程序集,它太棒了。我強烈推薦這個。 – 2009-08-01 04:51:30

相關問題