111,087
社区成员




string result = {\"Result\":{\"Ret\":0,\"Total\":2},\"Values\":[{\"Name\":\"electric_sum\",\"Value\":\" 15732585.00\",\"Quality\":0},{\"Name":\"TRQ_COUNT\",\"Value\":\"8974.12\",\"Quality\":0}]}
Rootobject[] datas = JsonConvert.DeserializeObject<Rootobject[]>("["+result+"]");
foreach (Rootobject data in datas)
{
Value v = new Value();
foreach (var item in data.Values)
{
v.Name =item.Name;
v.Values = item.Values;//value总是null值
v.Quality = item.Quality;
}
}
//实体类
public class Rootobject
{
public Result Result { get; set; }
public List<Value> Values { get; set; }
}
public class Result
{
public int Ret { get; set; }
public int Total { get; set; }
}
public class Value
{
public string Name { get; set; }
public string Values { get; set; }
public int Quality { get; set; }
}
从接口上获取到一段json 反序列化的时候是取不到最里面一层value的值,最里面一层其他的name Quality 都能取到值。看到json里面有个中括号了,实体类里也换成了泛型。但还是value的值还是null 。断点跟了程序,Rootobject[] datas = JsonConvert.DeserializeObject<Rootobject[]>("["+result+"]");在反序列化的时候,datas接受到的值就是空的。请问大佬们怎么解决处理。
我知道了。实体类的名字起错了。尴尬