中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在C#中反序列化Json

發布時間:2021-05-19 16:29:42 來源:億速云 閱讀:172 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關怎么在C#中反序列化Json,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Json源數據:

 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':'站點驗貨','opeRemark':'貨物已分配,等待配送','opeTime':'2011/04/23 08:29:56','opeName':'京東快遞','waybillCode':'bc00000001'},{'opeTitle':'配送員收貨','opeRemark':'配送員開始配送,請您準備收貨,','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}}}";

第一種:是用匿名方法生成,按照Json的格式,從外到內,一步一步寫,非數組用new{},數組用new[]{},名字必須與json中名字一致

//使用匿名變量構造
   {
    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;

    }
   }

第二種:使用實體

//實體部分,建議從內到外寫實體,名字必須與json中名字一致【簡便方法,搜索Json轉實體,將Json字符串導入,自動生成實體】

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; }
  }

//方法

//使用實體構造
   {
    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;
    }
   }

C#是什么

C#是一個簡單、通用、面向對象的編程語言,它由微軟Microsoft開發,繼承了C和C++強大功能,并且去掉了一些它們的復雜特性,C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程從而成為.NET開發的首選語言,但它不適用于編寫時間急迫或性能非常高的代碼,因為C#缺乏性能極高的應用程序所需要的關鍵功能。

關于怎么在C#中反序列化Json就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

华坪县| 罗源县| 竹溪县| 玉屏| 新津县| 巴中市| 临安市| 苗栗市| 肇庆市| 灵寿县| 龙陵县| 乌拉特中旗| 汉川市| 托克托县| 周宁县| 蒲江县| 綦江县| 通海县| 延川县| 武威市| 买车| 德钦县| 嘉禾县| 兴山县| 碌曲县| 阿瓦提县| 金阳县| 普宁市| 东辽县| 辽宁省| 纳雍县| 诏安县| 尚义县| 汝州市| 武山县| 梨树县| 德格县| 和林格尔县| 鹤山市| 叶城县| 定州市|