如何使用C# JsonConvert解析这种类型的JSON?

ncgqoxb0  于 2023-08-08  发布在  C#
关注(0)|答案(2)|浏览(144)

我尝试解析一个JSON响应,它看起来像这样:

{
    "users" : [{id: 1, ...},{id: 2, ...}],
    "count": 200
}

字符串
使用C#创建用户列表。我试着这样解析它:

Dictionary<string, List<User>> parsedJson = JsonConvert.DeserializeObject<Dictionary<string, List<User>>>(result);


但是得到一个错误,指示(count:100)不能被解析。现在我可以使用

Dictionary<string, dynamic> parsedJson = JsonConvert.DeserializeObject<Dictionary<string, dynamic>>(result);


但是我想确保parsedJson[“users”]将是一个用户列表。我怎么才能做到这一点?

roqulrg3

roqulrg31#

你的JSON响应是一个有两个属性的对象,所以你应该尝试:

public class JsonResponseDto
{
    public List<User> Users { get; set; }
    public int Count {get; set; }
}

var deserializedResult = JsonConvert.DeserializeObject<JsonResponseDto>(result);

字符串

xfb7svmp

xfb7svmp2#

你不需要任何额外的课程

List<User> users = JObject.Parse(result)["users"].ToObject<List<User>>();

字符串
如果你需要数数

int count = users.Count;

相关问题