我在如何从一个对象中获取另一个对象的值方面遇到了一些困难。我尝试了很多方法,但似乎无法返回该值。
变量结果返回 Json 如下:
{
"Date": "2016-12-14"
"Stats": {
"A": 9.23,
"B": 5.63,
"C": 0
}
}
尝试访问“Stats”值的代码:
var apiResult = await client.GetStringAsync(url);
var results = apiResult.DeserializeObject<StatsLA>(apiResult);
object[] getValues = results.GetType()
.GetProperties()
.Select(p =>
{
object value = p.GetValue(results);
return value == null ? null : value.ToString();
})
.ToArray();
最终目标是循环遍历结果并仅返回大于0的值。在此示例中,只有"A"和"B"会返回。我知道如何编写循环/linq语句,但首先需要获取这些值。如果您有任何建议或指导如何解决问题,我将不胜感激。
以下是类文件:
public class StatsLA
{
public string Date { get; set; }
public LocalStats stats { get; set; }
}
public class LocalStats
{
public double A { get; set; }
public double B { get; set; }
public double C { get; set; }
}
希望达成的结果:
{
"Date": "2016-12-14"
"Stats": {
"A": 9.23,
"B": 5.63
}
}
JObject
模型,而不是强类型反序列化。 - Dai