如何从IGrouping获取值
我IGrouping
对Select()
方法有疑问。
假设我有IEnumerable<IGrouping<int, smth>>
这样一种方式:
var groups = list.GroupBy(x => x.ID);
哪里list
是List<smth>
。
现在,我需要以IGrouping
某种方式将每个值传递给另一个列表:
foreach (var v in structure){
v.ListOfSmth = groups.Select(...); // <- ???
}
在这种情况下,有人可以建议如何从中获取值(List<smth>
)IGrouping<int, smth>
吗?
回答:
由于IGrouping<TKey,
TElement>工具IEnumerable<TElement>
,你可以用SelectMany
把所有的IEnumerables
回一个IEnumerable
一起:
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获取值 的全部内容, 来源链接: utcz.com/qa/435395.html