继上篇《json的反序列化》
引言
上篇提到了最基本的json对象反序列化,在项目中遇到了这么一个问题。接收到的是一个json数组。该怎么序列化呢?
先校验一个json数组
现在将这个数组进行反序列化,将其拼成字符串
<span style="font-size:18px;">string json ="{\"receipt_no\" : \"SO2016041316104590\",\"resource\" : [{\"row1\" : \"change->变更状态变更,二开,232.00,3,696.00\", \"row2\" : \"change->变更流程变更,二开,232.00,3,696.00\"}]}";</span>
根据json数组对应两个实体类:
Resources类
<span style="font-size:18px;">public class Resources
{
public string receipt_no { get; set; }
public List<Resource> resource { get; set; }
}</span>
Resource
<span style="font-size:18px;">public class Resource
{
public string row1{get;set;}
public string row2{get;set;}
}</span>
反序列化
<span style="font-size:18px;"> JavaScriptSerializer js = new JavaScriptSerializer();
Resources res = js.Deserialize<Resources>(json);</span>
取值
<span style="font-size:18px;"> string receipt_no = res.receipt_no;
List<Resource> list = res.resource;
string row1 = list[0].row1;
string row2 = list[0].row2;
string[] array = row1.Split(',');
string first = array[0];</span>
运行监控变量
小结
从json数组的反序列化到取值,就是这么简单!