我試圖解析一個JSON文件在C#中使用數據約定,但我有一個問題,因爲成員名稱並不總是恆定的,但結構是。C#DataContract與非常量變量名稱
拿這個JSON例如(由質地打包機創建):
{
"frames": {
"frame-abc":
{
"frame": {"x":41,"y":2,"w":256,"h":256},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":256,"h":256},
"sourceSize": {"w":256,"h":256}
},
"someframe":
{
"frame": {"x":2,"y":2,"w":37,"h":382},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":382},
"sourceSize": {"w":37,"h":382}
}
}
}
我怎麼會去爲它創建一個DataContract? 注意「frame-abc」和「someframe」具有完全相同的結構,但名稱不同。 所以我想有一個類有一個幀數組(每幀有幀,旋轉,修剪,spriteSourceSize和sourceSize元素),將從這個JSON文件加載。
謝謝。我會嘗試JSON.NET。任何你可以將它翻譯成C#的機會?另外,我需要維護JSON文件中的順序,我知道字典會使我失去它。 – tbkn23
a)它已經是c#b)如果你對frame-name不感興趣,你可以用'.Select(p => p.Value.ToObject ())替換'.ToDictionary(...)'。ToList );' – I4V
它不能識別'OfType()'方法' – tbkn23