我有以下包含多个子数组的JSON数据,任何建议如何反序列化并在我的页面上打印。
下一步
:在此之后,我需要使用批量复制功能在SQL中插入此数据。
C#代码
collect mydata= new JavaScriptSerializer().Deserialize<collect >(json);
foreach (var item in mydata.results)
{
context.Response.Write(item.newPrice + item.pName);
}
public class collect
{
public List<collection1> results { get; set; }
}
public class collection1
{
public List<data> collection1 { get; set; }
}
public class data
{
public string newPrice { get; set; }
public string pName { get; set; }
}
JSON数组:
{
"name": "Test 1",
"count": 3,
"version": 2,
"lastsuccess": "Thu Oct 09 2014 05:42:17 GMT+0000 (UTC)",
"results": {
"collection1": [
{
"newPrice": "12787",
"pName": "Sony Xperia M Dual Black"
},
{
"newPrice": "24999",
"pName": "LG Google Nexus 5 16 GB (Black)"
}
]
}
}
答案 0 :(得分:3)
要回答关于如何序列化JSON的问题,这是一个解决方案...我不确定你的意思是“打印在我的页面上”,因为你的问题没有把它放到任何上下文中...... / p>
我使用http://json2csharp.com创建了下面的poco类...
public class Collection1
{
public string newPrice { get; set; }
public string pName { get; set; }
}
public class Results
{
public List<Collection1> collection1 { get; set; }
}
public class RootObject
{
public string name { get; set; }
public int count { get; set; }
public int version { get; set; }
public string lastsuccess { get; set; }
public Results results { get; set; }
}
然后,以下代码将JSON反序列化为C#...
RootObject myData = new JavaScriptSerializer().Deserialize<RootObject>(json);
现在,您可以根据自己的批量插入方式随意使用...这是另一个问题,请开始一个新问题。