从分组的 LINQ 语句返回值的对象
本文关键字:返回值 对象 语句 LINQ | 更新日期: 2023-09-27 18:33:28
我已经成功地从分组的LINQ
语句中获得了我想要的输出,但我想知道是否有更优雅的方法。
目前,我每个组中有两个元素,我正在使用下面的代码返回具有fieldA, fieldB
值的对象列表:
infoList.GroupBy(s => s.Name.Substring(0, s.Name.LastIndexOf("whatever")) + 1)
.Select(grp => new {
fieldA = grp.ElementAt(0).Value,
fieldB = grp.ElementAt(1).Value
}
);
谁能帮忙?
它应该是
infoList.GroupBy(s => s.Name.Substring(0, s.Name.LastIndexOf("whatever"),
(key, g) => new { fieldKey= key,fieldValues = g.ToList() });
这是因为组并不总是有 2 个元素。最好将它们存储为列表