从JSON创建不同的项目列表

本文关键字:项目 列表 JSON 创建 | 更新日期: 2023-09-27 18:07:43

我有一个JSON如下-

[
  {
    "From": "London",
    "To": "Dubai",
    "Duration": "4"
  },
  {
    "From": "Dubai",
    "To": "Mumbai",
    "Duration": "8"
  },
  {
    "From": "Dubai",
    "To": "Dhaka",
    "Duration": "4"
  }
]

可以看到JSON在ToFrom字段中有位置。我使用

创建JSON
List<model> list = new List<model>();
         foreach (var item in lines)
         {
           string[] fields = item.Split(',');
           list.Add(new model
           {
            From = fields[0],
            To = fields[1],
            Duration = fields[2]
            });
         }
     var json = JsonConvert.SerializeObject(list, Formatting.Indented);

和Model类

public class model
    {
        public string From { get; set; }
        public string To { get; set; }
        public string Duration { get; set; }
    }

最后,我想创建一个名为CitiesList<string>,它只包含来自JSON的Distinct城市名称,没有任何重复。例如,迪拜在JSON中出现了三次。

任何想法?

从JSON创建不同的项目列表

我不确定你是指json直接,还是解析列表。假设您指的是列表,您可以使用Linq:

从列表中选择所需的不同元素。
var cities = list.Select(x => x.To).Distinct();