我使用Newtonsoft JSON.NET和.NET 4.6.1 我希望这个图书馆是“聪明的”#34;足以区分相同的数据类型并自动将它们转换为集合。 There's the JSON。我希望得到所有"索引"属性到数组或列表中 有没有办法正确地做到这一点? Here are classes我试图让它与之合作。
答案 0 :(得分:1)
我不知道是否有办法自动执行您想要做的事情,但您可以使用JSON-to-LINQ来实现您想要的目标。
这个想法是为了获得"历史"来自你的json内容的节点,然后提取你的" indexXXX"的所有第一个孩子。子节点。一旦有了子节点,就可以使用自动解串器。
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);
}