簡體   English   中英

使用 json.net 從 Json 中提取數據

[英]Extract data from Json with json.net

所以我有一個 JSON 文本,我需要從中提取一些字段的值

{"data":{"shortcode":{"id":"id123","shortcode":"alpha1","by":{"page_info":{"has_next_page":true,"cursor":"sometext=="},"edges":[{"node":{"id":"id1234","username":"admin123","full_name":"admin name",}},{"node":{"id":"id4321","username":"user123","full_name":"user ",}}]}}},"status":"ok"}

現在我需要每個“用戶名”字段和“光標”的值

我是這個話題的新手,我很感激任何幫助

如果您的項目中還沒有安裝 Newtonsoft.Json,則可以安裝為 Nuget package。 然后使用 JsonConvert.DeserializeObject() 方法將其解析為動態 object 類型,您可以使用它訪問其所有字段/屬性。

代碼看起來像這樣 -

添加對 Newtonsoft.Json 的引用

using Newtonsoft.Json;

DeserializeObject 方法將字符串解析為動態類型(可以用動態代替var)

var obj = JsonConvert.DeserializeObject<dynamic>(text);

對於您的示例中提到的 cursor 字段

Console.WriteLine(obj.data.shortcode.by.page_info.cursor);

迭代提到您的示例的每個用戶名

foreach (var edge in obj.data.shortcode.by.edges)
{
    Console.WriteLine(edge.node.id);
}

注意 - 因為您使用的是動態類型,所以您必須確保檢查 null 值以避免任何“NullRefereneException”。

那么您可以制作一個與您的 json 的結構相匹配的新 class 然后將 json 反序列化為該 ZA2F2ED4F8DCEBC2CBB4ZC21A26

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM