C# 如何使用相同对象但名称不同的列表解析JSON字符串?

C# 如何使用相同对象但名称不同的列表解析JSON字符串?,c#,json,json.net,C#,Json,Json.net,我正在将Newtonsoft JSON.NET与.NET 4.6.1一起使用。 我希望这个库足够“智能”,能够区分相同的数据类型并自动将它们转换为集合。我希望将所有“索引”属性放入数组或列表中。 有什么方法可以正确地做到这一点吗?我不知道是否有办法自动完成您想做的事情,但您可以使用JSON到LINQ来实现您想做的事情 其思想是从json内容中获取“history”节点,然后提取“indexx”子节点的所有第一个子节点。一旦有了子节点,就可以使用自动反序列化器 var data

我正在将Newtonsoft JSON.NET与.NET 4.6.1一起使用。
我希望这个库足够“智能”,能够区分相同的数据类型并自动将它们转换为集合。我希望将所有“索引”属性放入数组或列表中。

有什么方法可以正确地做到这一点吗?我不知道是否有办法自动完成您想做的事情,但您可以使用JSON到LINQ来实现您想做的事情

其思想是从json内容中获取“history”节点,然后提取“indexx”子节点的所有第一个子节点。一旦有了子节点,就可以使用自动反序列化器

var data          = JObject.Parse(json);
var historyItems  = from d in data["history"] select d.First;

foreach(var h  in historyItems)
{
    var history = JsonConvert.DeserializeObject<Index>(h.ToString());

    Console.Out.WriteLine("History : {0}, {1}, {2}", history.Pl, history.PlDesc, history.En);
}
var data=JObject.Parse(json);
var historyItems=数据中的d[“历史记录”]首先选择d;
foreach(历史项目中的var h)
{
var history=JsonConvert.DeserializeObject(h.ToString());
WriteLine(“History:{0}、{1}、{2}”、History.Pl、History.PlDesc、History.En);
}

:)那么,是什么阻碍了你这么做呢?@Candide我缺乏知识,这就是问题所在?