簡體   English   中英

如何將此json反序列化為對象列表?

[英]How to deserialize this json to a list of objects?

我得到了這個Json消息(不注意編碼):

{
"U1000 R2V": {
    "carac1": ["Câble d'alimentation rigide rond"],
    "optionVJ": ["Oui"],
    "carac4": [""],
    "carac3": ["Pour alimentation de ligne électrique", "Pour alimentation des moteurs"]
},
"H05 VVF": {
    "carac1": ["Câble souple rond"],
    "optionVJ": ["Oui"],
    "carac4": [""],
    "carac3": ["Pour câblage des sélecteurs à clé", "Pour alimentation des lampe clignotantes"]
}
}

我已經嘗試過使用這些對象:

public class TypeProductList
{
    public List<ProductTypeDTO> cables { get; set; }
}


public class ProductTypeDTO
{
    public string[] carac1;
    public string[] optionVJ;
    public string[] carac4;
    public string[] carac3;
}

但這是行不通的,實際上我不知道該怎么做,因為每個對象的“父元素”(我的意思是U1000 R2V,H05 VVF)都在變化。 我應使用什么結構將其反序列化為ProductTypeDTO列表? 謝謝

正如Anton在其評論中指出的那樣,您應該首先反序列化為Dictionary<string, ProductTypeDTO>

代碼(使用JSON.NET):

var result = JsonConvert.DeserializeObject<Dictionary<string, ProductTypeDTO>>(json);
var typeProductList = new TypeProductList { cables = result.Values.ToList(); }

暫無
暫無

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

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