簡體   English   中英

如何序列化具有多個 object 類型的 json 字符串?

[英]How to Serialize a json string with multiple object types?

假設我有一個 json 字符串,如下所示:

{
  "customers": [{
      "id": 1,
      "name": "Bob"
    },
    {
      "id": 2,
      "name": "Mary"
    }
  ],
  "products": [{
      "id": 1,
      "description": "apple",
      "price": 0.50
    },
    {
      "id": 2,
      "description": "orange",
      "price": 0.75
    }
  ]
}

從那個字符串,我需要得到一個List<customer>

public class Customer
{
    public int Id { get; set; }
    public string Name { get; set; }
}

也許我遺漏了一些東西,但我沒有在 Newtonsoft 文檔中看到如何做到這一點。

public class Customer
{
    public int id { get; set; }
    public string name { get; set; }
}

public class Product
{
    public int id { get; set; }
    public string description { get; set; }
    public double price { get; set; }
}

public class RootObject
{
    public List<Customer> customers { get; set; }
    public List<Product> products { get; set; }
}

將您的 json 字符串反序列化為“RootObject”

var rootObj = JsonConvert.DeserializeObject<RootObject>(myJsonString);

您正在尋找部分 JSON 片段反序列化 總而言之,您必須將整個 JSON object 加載到 JObject 中,然后將 select 的 ZA8Z6FDE6331C1 類型的子令牌轉換為所需的 9891 BD4BEB66AC。

另請查看JSON 路徑選擇,您可以在其中使用令牌選擇器直接獲取 JSON 的一部分。

暫無
暫無

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

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