首页 > 解决方案 > 在 C# 中将 json 解析为通用列表

问题描述

我有 Json Like 值名称对。我需要转换为通用列表。

{“选项”:{“32”:“S”,“4”:“SM”,“33”:“M”,“34”:“L”,“35”:“XL”,“37”: "XXL", "38": "XXXL" } }

我的课喜欢

public class Options
{
    public int optionId { get; set; }
    public string OptionName { get; set; }
}

如何将json转换为List<Options>

标签: json.netasp.net-mvcc#-4.0

解决方案


首先将您的 json 转换为Dictionary<string, string>,然后将其转换为您的模型,如下所示:

  public class OptionDictionary
    {
        public Dictionary<string, string> Options { get; set; }
    }
    public class Options
    {
        public int OptionId { get; set; }
        public string OptionName { get; set; }
    }
  
  var list = JsonConvert.DeserializeObject<OptionDictionary>(json).Options.Select(x=>new Options(){OptionId = int.Parse(x.Key), OptionName = x.Value}).ToList();

推荐阅读