建议的方法将IGrouping <tkey,tvalue =“”>转换为IDictionary <tkey,ienumerable <tvalue =“”>&gt; </tkey,> </tkey,>

时间:2013-11-23 01:34:18

标签: c# linq ienumerable grouping

这必须是重复的,但我的搜索并没有产生我想要的结果。

看起来这应该是相当简单的,但似乎没有内置的LINQ机制来实现这一点。一些帮助将不胜感激。

......我也可能做错了。我有一组具有属性Foo的可枚举对象,我想创建一个字典,其中Foo属性是字典的键,其中值是具有Foo的对象的枚举同样的价值。

1 个答案:

答案 0 :(得分:6)

这应该有效:

var dict = yourGroup.ToDictionary(g=>g.Key, g=>g.Select(x=>x));

或使用AsEnumerable生成值:

var dict = yourGroup.ToDictionary(g=>g.Key, g=>g.AsEnumerable());