我有带有字符串键字典和值数组的JSON。他的结构如下:
{
"NameA":{
"ParametersA":[
[104.3,5.368783],
[104.212,2.57357],...,
],
"ParametersB":[
[104.3,5.368783],
[104.212,2.57357],...,
]
},
"NameB":{
"ParametersA":[
[104.3,5.368783],
[104.212,2.57357],...,
],
"ParametersB":[
[104.3,5.368783],
[104.212,2.57357],...,
]
},
"ThousandsNamesN":{[...]
}
}
我为此创建了一个类来获取这样的数据:Dictionaty<key=NameA, value=List<Parameters>>
而参数是另一个具有数组A和B的类。
这是我的根类:
internal class RawDepth
{
public Dictionary<string, Parameters> Names { get; set; }
internal class Parameters
{
[JsonProperty("ParametersA")]
public IList<Orders> A { get; set; }
[JsonProperty("ParametersB")]
public IList<ParamsArray> B { get; set; }
}
internal class ParamsArray
{
public decimal[,] _Orders { get; set; }
}
}
我捕获了一个空引用异常。我尝试以不同的方式创建类,但是仍然无法反序列化它。我做错了什么?
您的模型可以像这样
public class Parameters
{
public List<List<decimal>> ParametersA { get; set; }
public List<List<decimal>> ParametersB { get; set; }
}
现在您可以反序列化为
var dict = JsonConvert.DeserializeObject<Dictionary<string, Parameters>>(json);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句