我正在使用JSON.Net来检索以下JSON格式的数据。
{“ Pagination”:{“ CurrentPage”:1,“ PageSize”:20,“ NumberOfPages”:3796,“ totalCount”:75913},“ Data”:[{“ SalesOrderNumber”:“ 003119”},{ “ SalesOrderNumber”:“ 003336”},{“ SalesOrderNumber”:“ 003410”},{“ SalesOrderNumber”:“ 003520”}]}
我可以成功检索数据并将其加载到C#文本框中。我要做的是将其加载到数据集中。我正在使用以下语句尝试加载数据集。
DataSet dsSalesOrders = JsonConvert.DeserializeObject<DataSet>(response.Content);
运行程序时出现以下错误
Newtonsoft.Json.JsonSerializationException:'读取DataTable时出现意外的JSON令牌。应该是StartArray,得到了StartObject。路径“分页”,第1行,位置15。”
这是我第一次使用JSON,如何解决此问题?
谢谢
答案 0 :(得分:2)
尝试将此课程作为接收课程
public class YourMainObject
{
public Pagination Pagination { get; set; }
public Datum[] Data { get; set; }
}
public class Pagination
{
public int CurrentPage { get; set; }
public int PageSize { get; set; }
public int NumberOfPages { get; set; }
public int totalCount { get; set; }
}
public class Datum
{
public string SalesOrderNumber { get; set; }
}
然后反序列化,然后分别填充数据集。
PS:在下面的讨论中,其他程序员建议您可能真的不需要使用数据集
答案 1 :(得分:0)
液体核心
感谢类定义,这就是我想要的。
至于我对数据集注释的讨论,它们是正确的,我不需要数据集。我主要使用SQL数据,因此我习惯于使用WinForms项目中的数据集来呈现我的数据。加载Dataum类后,我便将数据源分配给了数组。