a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁(yè) > 編程 > C# > 正文

C#中Json反序列化的實(shí)現(xiàn)方法

2019-10-29 19:59:04
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

前言

Json反序列化有兩種方式【本人】,一種是生成實(shí)體的,方便處理大量數(shù)據(jù),復(fù)雜度稍高,一種是用匿名類寫,方便讀取數(shù)據(jù),較為簡(jiǎn)單。

使用了Newtonsoft.Json,可以自行在nuget中導(dǎo)入

Json源數(shù)據(jù):

 var data = "{'jingdong_ldop_receive_trace_get_responce':{'code':'0','querytrace_result':{'data':[{'opeTitle':'快遞簽收','opeRemark':'貨物已交付京東物流','opeTime':'2011/04/17 18:23:20','opeName':'京東快遞','waybillCode':'bc00000001'},{'opeTitle':'站點(diǎn)驗(yàn)貨','opeRemark':'貨物已分配,等待配送','opeTime':'2011/04/23 08:29:56','opeName':'京東快遞','waybillCode':'bc00000001'},{'opeTitle':'配送員收貨','opeRemark':'配送員開始配送,請(qǐng)您準(zhǔn)備收貨,','opeTime':'2011/04/23 08:36:28','opeName':'京東快遞','waybillCode':'bc00000001'},{'opeTitle':'妥投','opeRemark':'貨物已完成配送,感謝您選擇京東物流','opeTime':'2011/04/23 09:47:13','opeName':'京東快遞','waybillCode':'bc00000001'}],'messsage':'成功','code':100}}}";

第一種:是用匿名方法生成,按照J(rèn)son的格式,從外到內(nèi),一步一步寫,非數(shù)組用new{},數(shù)組用new[]{},名字必須與json中名字一致

//使用匿名變量構(gòu)造   {    var JsonDataForVar = Newtonsoft.Json.JsonConvert.DeserializeAnonymousType(data, new    {     jingdong_ldop_receive_trace_get_responce = new     {      code = string.Empty,      querytrace_result = new      {       data = new[] {       new {         opeTitle=string.Empty,         opeRemark=string.Empty,         opeTime=string.Empty,         waybillCode=string.Empty,         opeName=string.Empty       }      }      }     }    });    foreach (var item in JsonDataForVar.jingdong_ldop_receive_trace_get_responce.querytrace_result.data)    {     var a = item.opeTitle;     var b = item.opeRemark;     var c = item.opeTime;     var d = item.waybillCode;     var f = item.opeName;    }   }

第二種:使用實(shí)體

//實(shí)體部分,建議從內(nèi)到外寫實(shí)體,名字必須與json中名字一致【簡(jiǎn)便方法,搜索Json轉(zhuǎn)實(shí)體,將Json字符串導(dǎo)入,自動(dòng)生成實(shí)體】

public class Item  {   public string opeTitle { get; set; }   public string opeRemark { get; set; }   public string opeTime{ get; set; }   public string waybillCode { get; set; }   public string opeName { get; set; }  }  public class JdResult  {   public string code { get; set; }   public string msg { get; set; }   public List<Item> data { get; set; }  }  public class JdResponce  {   public string code { get; set; }   public JdResult querytrace_result { get; set; }  }  public class JdBody  {   public JdResponce jingdong_ldop_receive_trace_get_responce { get; set; }  }

//方法

//使用實(shí)體構(gòu)造   {    var JsonDataForClass = Newtonsoft.Json.JsonConvert.DeserializeAnonymousType(data, new JdBody());    foreach (var item in JsonDataForClass.jingdong_ldop_receive_trace_get_responce.querytrace_result.data)    {     var a = item.opeTitle;     var b = item.opeRemark;     var c = item.opeTime;     var d = item.waybillCode;     var f = item.opeName;    }   }

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)VEVB武林網(wǎng)的支持。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到c#教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 中文字幕欧美激情 | 国产小视频网站 | 国产精品视频自拍 | 久久久久久一区二区 | 国产青青 | 国产欧美一区二区三区在线看 | 全免费一级毛片免费看 | 久久综合色视频 | 亚洲成人一区二区三区 | 97精品视频在线 | 久久久综合av | 色综合久久天天综合网 | 四虎影视库 | 国产精品自拍视频 | 国产精品免费看 | 亚洲精选一区 | 九九精品免费视频 | 国产一区二区不卡视频 | 成人精品视频在线观看 | 欧美日韩亚洲国内综合网 | 久久人人爽爽人人爽人人片av | 久久网站免费视频 | 日韩久久一区 | 一区二区免费在线观看 | 一区二区三区视频在线播放 | 国产精品999 | 黄色电影网站在线观看 | 久久综合一区二区三区 | 九九99久久 | 在线视频91 | 日韩视频三区 | 欧美在线观看黄 | 久久久久久久久久毛片 | 极品美女中出 | 这里精品 | 日韩电影专区 | 午夜国产一区 | 欧美精品欧美极品欧美激情 | 国产成人99 | 欧美在线一二三 | 国产精品99久久免费观看 |