我有一个奇怪的JSON响应字符串,格式如下:
{
"Result": <this is the array of Ticket objects>,
"IsLastPage": true,
"NextSkip": 1,
"NextTake": 1,
"PageCount": 2,
"TotalCount": 3,
"QueryResultHash": "sample string 4"
}
通常我会在返回数组时返回Json数组(上面的Result值),如下所示:
var jsonArray = JArray.Parse(resultString);
foreach (var jsonObject in jsonArray)
{ ... }
但我不知道如何分解上面的字符串,以便我可以单独获取7个值并解析数组。有什么建议吗?
答案 0 :(得分:1)
如果可能,我会使用库Newtonsoft.Json(https://www.nuget.org/packages/Newtonsoft.Json/)。
然后您可以创建一个ResponseContainer类。像,
//generated by http://json2csharp.com/
public class ResponseContainer
{
public List<object> Result { get; set; }
public bool IsLastPage { get; set; }
public int NextSkip { get; set; }
public int NextTake { get; set; }
public int PageCount { get; set; }
public int TotalCount { get; set; }
public string QueryResultHash { get; set; }
}
然后你可以做
JsonSerializer serializer = new JsonSerializer();
ResponseContainer response = serializer.Deserialize<ResponseContainer>(jsonString);
现在,您可以作为C#对象访问json响应中的字段。