本文介绍了如何从IGrouping获取值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个关于IGrouping和Select()方法。问题
I have a question about IGrouping and Select() method.
可以说,我已经有了的IEnumerable< IGrouping< INT,未便>>
是这样的:
Lets say I've got IEnumerable<IGrouping<int, smth>>
in this way:
var groups = list.GroupBy(x => x.ID)
其中列表是列表与LT;水木清华方式&gt;
和现在我需要每个 IGrouping
的值传递给在某种程度上另一个列表:
And now I need to pass values of each IGrouping
to another list in some way.:
foreach (var v in structure)
{
v.ListOfSmth = groups.Select(...); // <- ???
}
任何人可以建议如何获取值(列表&LT;水木清华&GT;
)从 IGrouping&LT; INT,未便&GT;
中这样的背景下?
推荐答案
由于 IGrouping&LT; TKEY的,TElement&GT;
工具的IEnumerable&LT; TElement&GT;
,您可以用的SelectMany
来把所有的 IEnumerables
返回到一个的IEnumerable
一起:
Since IGrouping<TKey, TElement>
implements IEnumerable<TElement>
, you can use SelectMany
to put all the IEnumerables
back into one IEnumerable
all together:
List<smth> list = new List<smth>();
IEnumerable<IGrouping<int, smth>> groups = list.GroupBy(x => x.id);
IEnumerable<smth> smths = groups.SelectMany(group => group);
List<smth> newList = smths.ToList();
这篇关于如何从IGrouping获取值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!