字典数组为平面列表

本文关键字:列表 平面 数组 字典 | 更新日期: 2023-09-27 17:53:51

是否有更好的方法(特别是使用Linq)返回以下json字符串中的id的列表/IEnumerable ?

string json = "[{'"Id'":38,'"Name'":'"Albert Einstein'",'"Document'":'"845.803.604-51'"},{'"Id'":102,'"Name'":'"Benoit Mandelbrot'",'"Document'":'"657.322.962-20'"},{'"Id'":86,'"Name'":'"Santos-Dumont Aerospace'",'"CpfCnpj'":'"24.195.152/0001-55'"}]";

目前我有:

Dictionary<string, string>[] deserializedJSON = Ext.Net.JSON.Deserialize<Dictionary<string, string>[]>(json);
List<decimal> idList = new List<decimal>();
foreach (var item in deserializedJSON)
{
    foreach (var i in item)
    {
        if (i.Key == "Id")
            idList.Add(Convert.ToDecimal(i.Value));
    }
}

字典数组为平面列表

idList = deserializedJSON.Select(d => decimal.Parse(d["Id"]))
                         .ToList();