オブジェクト内のオブジェクトから値を取得する方法についてちょっと固まっています。私は数多くの方法を試しましたが、値を返すことはできません。試してみて、アクセス「統計」の値にオブジェクト内のオブジェクトから値を抽象化する方法はありますか?
{
"Date": "2016-12-14"
"Stats": {
"A": 9.23,
"B": 5.63,
"C": 0
}
}
コード:
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();
最終目標は、結果をループし、よりをされている値のみを返す
VAR結果は、JSON、これを返しますこの例では、 "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
}
}
このようなシナリオでは、強力な型の逆シリアル化ではなくJson.NETで 'JObject'モデルを使用することをお勧めします。 – Dai