2012-11-22 128 views
3

不同類型的陣列有一種反序列化這樣JSON反序列化JSON使用DataContractJsonSerializer

{ 
    "photos": [ 
    19, 
    { 
     "pid": 288777129, 
     "aid": -6 
    }, 
    { 
     "pid": 286441792, 
     "aid": -6 
    }, 
    { 
     "pid": 114893258, 
     "aid": 34465839 
    } 
    ] 
} 

用C#DataContractJsonSerializer無需修改源。我的意思是第一元件19

+0

JSON數組並不僅限於一種類型(所以JSON是有效的),其實在javascript的對象將是所有在某種意義上被視爲不同類型,因爲它們只是通用對象文字。 – Esailija

+0

我編輯的問題標題更加正確。 – mumu2

+0

你找到答案了嗎?或者你最終沒有使用DataContract –

回答

1

我通常使用JavascriptSerializer類代替:

JavaScriptSerializer js = new JavaScriptSerializer(); 
Object obj = js.DeserializeObject(str); 
Response.Write(obj["photos"][0]); // 19 
+0

不幸的是我需要反序列化DataContract支持。 – mumu2

相關問題