gpt4 book ai didi

c# - 在c#中反序列化部分json字符串(数组)

转载 作者:行者123 更新时间:2023-11-30 19:37:35 26 4
gpt4 key购买 nike

我有一个像这样的 json 字符串:

{  
"Results":[
{
"attr1": "value1",
"attr2": "value2",
"A": "value_a",
"B": "value_b",
"C": "value_c",
"GuestValues":[
{
"A": "value_a",
"B": "value_b",
"C": "value_c"
},
{
"A": "value_a",
"B": "value_b",
"C": "value_c"
},
{
"A": "value_a",
"B": "value_b",
"C": "value_c"
}
}
],
"TotalResults":1,
"MilliSeconds":11
}

我只想反序列化 GuestValues 数组。我创建了一个这样的类:

public class GuestValue
{
public string A;
public string B;
public string C;
}

public class GuestValueResult
{
public List<GuestValue> GuestValues { get; set; }
public in TotalResults { get; set; }
}

然后这样调用它:

GuestValueResult guestValues = JsonConvert.DeserializeObject<GuestValueResult>(jsongString);

但它不起作用。我试了很多次,不知何故,它只给我返回 jsonString 中的第一个 "A""B""C" , "GuestValues" 上面那个,我不要那组数据。我只想要 "GuestValues" 中的那些。请帮忙。

最佳答案

您可以使用 Linq to JSON(JSON.NET 的一部分)访问相关节点,然后反序列化它:

var root = JObject.Parse(jsonString);
var guestValues = root["Results"][0]["GuestValues"].ToObject<GuestValue[]>();

关于c# - 在c#中反序列化部分json字符串(数组),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37335030/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com