c#newtonsoft解析内部数组
我将json反序列化为一个模型类,但我想在保存到sqlite之前对boxes数组做一些工作,我一直在循环遍历所有的框并获取值c#newtonsoft解析内部数组,c#,json,c#-4.0,C#,Json,C# 4.0,我将json反序列化为一个模型类,但我想在保存到sqlite之前对boxes数组做一些工作,我一直在循环遍历所有的框并获取值 { "data": [ // single outer array { "id": 8620379, "business_id": 191, "business_name": "yada", "boxes": [ { "box_id": 4
{
"data": [ // single outer array
{
"id": 8620379,
"business_id": 191,
"business_name": "yada",
"boxes": [
{
"box_id": 485,
"box_name": "5/6",
"box_group": null
},
{
"box_id": 483,
"box_name": "1/2",
"box_group": null
},
{
"box_id": 484,
"box_name": "3/4",
"box_group": null
}
]
},
{
"id": 8636759,
"business_id": 257,
"business_name": "something else",
"boxes": [
{
"box_id": 1176,
"box_name": "FC",
"box_group": null
}
]
}, // and more boxes
公共类框
{
公共整数框_id{get;set;}
公共字符串框_name{get;set;}
公共对象框组{get;set;}
}
公共类数据
{
公共int id{get;set;}
public int business_id{get;set;}
公共字符串业务名称{get;set;}
公共列表框{get;set;}
}
公共类根对象
{
公共列表数据{get;set;}
}
rootobjectobj=JsonConvert.DeserializeObject(“您的json字符串”);
看看这个,也许你会明白要点:是的,我这样做了,但是sqlite不能使用列表框,我需要遍历所有框并将基准id与其他字段一起插入到框表中,因此对于每个基准id,选择所有框,添加基准id并使用List.ToArray()方法执行sql插入操作,将列表转换为数组。然后使用foreach循环迭代集合。。。
public class Box
{
public int box_id { get; set; }
public string box_name { get; set; }
public object box_group { get; set; }
}
public class Datum
{
public int id { get; set; }
public int business_id { get; set; }
public string business_name { get; set; }
public List<Box> boxes { get; set; }
}
public class RootObject
{
public List<Datum> data { get; set; }
}
RootObject obj = JsonConvert.DeserializeObject<RootObject>("your json string");