这似乎完全是直截了当的,但是今天早上我的大脑工作得不好,我似乎无法找到一个很好的搜索表达式。
我有一个IList<IDictionary<string, string>>
,我希望在我的字典对象集合中获得一个包含不同键名称的明确列表的IList<string>
。什么是快速而优雅的方式来做到这一点?我确定答案很简单,我想不出来。
答案 0 :(得分:3)
var allKeys = from dict in list
from key in dict.Keys
select key;
var distinctKeys = allKeys.Distinct().ToList();
或者如果您更喜欢lambda语法:
var distinctKeys = list.SelectMany(dict => dict.Keys).Distinct().ToList();
答案 1 :(得分:2)
list.SelectMany(d => d.Keys).Distinct()