如何从基于另一个属性的json列表中获取属性?

时间:2019-01-24 21:03:30

标签: c# json

我有一个由对象列表组成的json响应。每个对象都有一个ctrl-gid

例如:name

在不使用模型和反序列化的情况下,给定[{"id":1,"name":"Joe"},{"id":2,"name":"Mike"}]来直接获得name的最简单方法是什么?

我需要类似以下内容的方法,但它确实有效:

id

1 个答案:

答案 0 :(得分:1)

我喜欢将JsonPaths用于这样的事情。这些是使用JsonPaths查询json的几个很好的参考。 http://jsonpath.com/https://goessner.net/articles/JsonPath/index.html#e2

var json = "[{ 'id':1,'name':'Joe'},{ 'id':2,'name':'Mike'}]";
var jObject = JArray.Parse(json);
JToken nameResult = jObject.SelectToken("$.[?(@.id == 1)]"); 
var jsonResult = nameResult["name"].ToString();