所以我用Json.net反序列化由的REST API返回到服務器的JSON數據,它返回的數據結構爲:未能desirialize異構JSON數據
{ "keyXXX" : [[1,2,3,...]...], "last": 12345 }
的問題是「關鍵」的也是數據的一部分,它不是一個名爲「key」的字段,所以我不能使用類/結構體,我必須使用IDictionary<string, int[][]>
作爲第一部分,但「最後」部分會拋出異常,因爲它是一個整數而不是數組數組。 這是我已經試過:
var dec = JsonConvert.DeserializeObject<IDictionary<string, int[][]>>(data);
這將引發異常的JSON:
Newtonsoft.Json.JsonSerializationException:錯誤轉換值1501555920鍵入 'System.Decimal [] []'。路徑'最後'。
//define a class
public class DPInfo
{
public decimal[][] points { get; set; }
public long last { get; set; }
}
var dec = JsonConvert.DeserializeObject<DPInfo>(data);
這不會起作用,因爲數組的字段名稱是動態的,所以points
將包含在此之後什麼都沒有。
任何方式我可以解決這個問題?
在JSON中是否只有一個'keyXXX'或多個不同的'XXX'值? –
只有一個,但它的名字各異 – fluter