Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从元素为流体的Json中提取数据集_C#_Json - Fatal编程技术网

C# 如何从元素为流体的Json中提取数据集

C# 如何从元素为流体的Json中提取数据集,c#,json,C#,Json,我的WebApi中有一个Json对象。结构可以采取任何形式。我唯一能确定的是,在该结构的某个地方(可以是顶级节点,也可以是子节点),我将有一个由以下部分组成的节点: "data": { "mop": "1012346354462", "fuelType": "E", "Id": "1029dd56-10b1-46cb-9

我的WebApi中有一个Json对象。结构可以采取任何形式。我唯一能确定的是,在该结构的某个地方(可以是顶级节点,也可以是子节点),我将有一个由以下部分组成的节点:

"data": {
        "mop": "1012346354462",
        "fuelType": "E",
        "Id": "1029dd56-10b1-46cb-9966-3c37e057a470",
        "Status": "SecuredActive",
        "StatusFromDate": "2020-11-20T17:00:00.000Z",
        "ActiveDate": "2020-11-21T00:00:00.000Z",
        "GeneratedReference": "1012346354462_1"
      },

有人能帮我从JSon对象中轻松提取这一点数据吗。我有一个映射到这些属性的类,但在使用它之前,我需要从JSON的其余部分中挑出它。我正在使用C#

使用JSON转换来反序列化对象

var Data = JsonConvert.DeserializeObject<dynamic>(data);
var Data=JsonConvert.DeserializeObject(数据);
然后可以使用数据对象进行访问。 例如:
Console.WriteLine((String)Data.Data.fuelTypereturn)


回答为“E”

经过反复思考,我终于找到了解决方案,所以我想我会发布帖子,以防其他人遇到类似问题

JObject result = JObject.Parse(Request.ToString());

var clientarray = result["events"].Value<JArray>();

var blockIwant = clientarray.Children<JObject>().Select(x => x.Children<JProperty>().Where(y => y.Name == "data").First());
JObject result=JObject.Parse(Request.ToString());
var clientarray=result[“events”].Value();
var blockIwant=clientarray.Children().Select(x=>x.Children().Where(y=>y.Name==“data”).First();

假设您使用System.Text.Json:您可以使用Q&A中提供的扩展来获取名为
数据的
JsonElement
,然后使用Q&A将其反序列化为对象。这不起作用。例如,如果我上面的示例被包装在另一个元素中,那么
“object”不包含“data”的定义