有没有办法将.Net ILookup <tkey,telement =“”>压缩成List <telement>?</telement> </tkey,>

时间:2010-02-24 02:59:13

标签: .net ilookup

是否可以通过List<TElement>扩展程序从ILookup<TKey, TElement>获得展平IEnumerable<TElement>的快速方法?


更新了示例

List<int> list = new List<int>();
var lookup = list.ToLookup(key => key);
list = lookup.?? // How to convert the lookup back to the list

2 个答案:

答案 0 :(得分:21)

lookup.SelectMany( x => x ).ToList()

然而,转换为ILookup并再次返回很可能会改变顺序。

答案 1 :(得分:-1)

不确定这是不是你所追求的。对于Dictionary<>List<>

List<TElement> list iLookUp.Values.ToList<TElement>();

List<>Dictionary<>

var dict = list.Cast<TElement>().ToDictionary(t => t.Id, t => t.Description);