C#中JObject类型的用法实例

在日常开发过程中,我们会经常调用第三方API进行查询数据,现在大多数API的数据返回格式都是JSON,那么如何在C#中解析JSON,本文会进行一个简单的阐述,其中就用到了JObject类型,学术不精,有不合适之处,还望海涵。

数据实体一:

[{
  "vinNum": "CAR-VIN",
  "soc": "91.0%",
  "dataTime": "2020-05-01 02:42:37",
  "mileageSum": "29993.0",
  "longitude": "115.846391",
  "latitude": "28.745174"
}]

数据实体二:

{
  "success": true,
  "message": "",
  "data": [
    {
      "vinNum": "CAR-VIN",
      "soc": "91.0%",
      "dataTime": "2020-05-01 02:42:37",
      "mileageSum": "29993.0",
      "longitude": "115.846391",
      "latitude": "28.745174"
    }
  ]
}

对于数据实体一,我们可以直接使用JsonConvert.DeserializeObject<T>(data)来转换为List<T>,这种是比较简单的。

List<T> list=JsonConvert.DeserializeObject<T>(数据实体一);

对于数据实体二,我们直接转换会出错,因为返回的第一层并不是数组类型,所以需要先把数据强制转换为 JObject 类型,然后再来转换data中的数据

JObject jObjcet=(JObject)JsonConvert.DeserializeObject(数据实体二);
List<T> list=JsonConvert.DeserializeObject<List<T>>(jObjcet["data"].ToString());

 

本文内容为原创,转载请注明出处。

 

THE END