私は次のJSONファイルを持っています。この質問の簡潔さのために切り捨てられています。実際のJSONファイルには、10〜20個のメッセージと3〜15個の結果が含まれます。JPathを使用して、同じノードの別のキー値のペアに基づいて値を返すにはどうすればよいですか?
{
"messages": [
{
"type": "msgInfo",
"description": "Some stuff happened"
},
{
"type": "msgInfo",
"description": "More stuff happened"
},
{
"type": "msgInfo",
"description": "yup, more stuff happened"
}
],
"results": [
{
"parameterId": "val_1",
"dataType": "Double",
"value": 123.45
},
{
"parameterId": "val_2",
"dataType": "Double",
"value": 246.80
},
{
"parameterId": "val_3",
"dataType": "Double",
"value": 135.79
},
{
"parameterId": "val_4",
"dataType": "Long",
"value": 20161021
}
]
}
私はparameterId
キーの値に基づいてvalue
キーの値を取得しようとしています。たとえば、 "val_1"にJPathを使用して "123.45"を返す必要があります。
これまでのところ(this投稿からコピーされた)このコードはありますが、正しいパスを取得できません。
JObject obj = JObject.Parse(json);
JToken token = obj["results"]["parameterId"];
Console.WriteLine(token.Path + " -> " + token.ToString());
Console.ReadLine();
「val_1」へのJPathを使用して「123.45」を返すには、どうすればよいですか?