【发布时间】:2016-04-30 01:06:35
【问题描述】:
我有以下列表
ID Counter SrvID FirstName
-- ------ ----- ---------
1 34 66M James
5 34 66M Keith
3 55 45Q Jason
2 45 75W Mike
4 33 77U Will
我喜欢做的是按 ID 升序排序,然后 获取相同的 Counter、SrvID 的第一个值(如果有)。
所以输出会是这样的:
ID Counter SrvID FirstName
-- ------ ----- ---------
1 34 66M James
2 45 75W Mike
3 55 45Q Jason
4 33 77U Will
注意 ID 5 是如何从列表中删除的,因为 Counter 和 SrvID 与我对 ID 1 的相同,但 ID 1 排在第一位 我删除了 5 个。
这是我会做但不工作的事情
var result = (from ls in list1
group ts by new {ls.Counter, ls.SrvID}
order by ls.ID
select new{
ls.ID,
ls.Counter.FirstOrDefault(),
ls.SrvID.First,
ls.FirstName}).ToList()
【问题讨论】:
-
@ChrisWue - 感谢您调整格式。你是怎么把它格式化成表格的?
-
这只是标准代码格式:缩进 4 个空格