2013-07-25 66 views
1

我正在使用一個Javascript庫,它希望數據具有某種json格式,如下所示。我將使用.NET獲取數據並使用json反序列化將其提供給庫。不過我不確定C#類是如何序列化爲json的。內置的.NET json序列化程序是否支持這個json結構,還是必須投資於更高級的庫,比如json.net?我從來沒有使用過json.net。我的做法是做幾個試驗和錯誤的方法,創建不同的C#類並查看輸出json,直到json結構匹配下面的格式。這似乎效率低下且耗時,我想知道是否有更好的方法。如何基於json結構創建C#類結構?

注意:每個第二級節點可以有一個或多個子級。例如:與playcount 276的,271

{ 
"children": [ 
    { 
     "children": [ 
     { 
      "children": [], 
      "data": { 
      "playcount": "276", 
      "$color": "#8E7032", 
      "image": "http://userserve-ak.last.fm/serve/300x300/11403219.jpg", 
      "$area": 276 
      }, 
      "id": "album-Thirteenth Step", 
      "name": "Thirteenth Step" 
     }, 
     { 
      "children": [], 
      "data": { 
      "playcount": "271", 
      "$color": "#906E32", 
      "image": "http://userserve-ak.last.fm/serve/300x300/11393921.jpg", 
      "$area": 271 
      }, 
      "id": "album-Mer De Noms", 
      "name": "Mer De Noms" 
     } 
     ], 
     "data": { 
     "playcount": 547, 
     "$area": 547 
     }, 
     "id": "artist_A Perfect Circle", 
     "name": "A Perfect Circle" 
    }, 
..... 
+0

json.net很漂亮 –

回答

4

或..你可以做它周圍的其他方法:

http://json2csharp.com/ 

扔您的JSON在那裏,它會吐出C#類從而模仿Json格式..你不必手動嘗試和錯誤它。

+1

這節省了我很多時間。謝謝。 –

0

使用此http://jsonclassgenerator.codeplex.com/

我一直在使用這個相當長的一段時間,它是從你的JSON生成C#類的最佳方法。 生成類後,可以使用JSON.NET對其進行序列化,以獲得所需的JSON。