(譯)JToken的層次結構


 原文地址:https://stackoverflow.com/questions/38558844/jcontainer-jobject-jtoken-and-linq-confusion/38560188#38560188?newreg=577582085c60496db7bdb78be26a2313

 

JToken的層次結構是這樣的:


JToken          -抽象基類
  JContainer     - 能夠包含其它JToken的JToken抽象基類
    JArray     - 表示一個JSON數組(包含一個有序的List<JToken>)
    JObeject      - 表示一個JSON對象(包含一個IEnumerable<JProperty>)
    JProperty     - 表示一個JSON屬性(在JObject中是一個name/JToken鍵值對)
  JValue       - 表示一個原生JSON值(string,number,boolean,null)


以下是幾條基本的經驗法則:

  • 如果是一個對象(在JSON里是有大括號“{”和“}”來標識的),就用JObject。
  • 如果是一個數組或集合(用中括號“[”和“]”標識的),就用JArray。
  • 如果是原生值,就用JValue。
  • 如果你不知道你的json是什么類型的token,或者你希望用一種通用的方式來處理上面任意一種類型的對象,就用JToken,然后你可以檢查它的Type屬性來決定是哪種類型的token,並把它轉化成相應的類型。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM