我有一个像{Min,Max,rank}
这样的列表我的需要是我需要根据排名
获得最小值和最大值作为列表我写了像
这样的代码ListA.Find(x => x.Rank == 1)
从此我需要获得{Min,max}
的子列表答案 0 :(得分:3)
这就是你要找的东西:
var result = ListA.Find(x => x.Rank == 1).Select(x => new { x.min, x.max });
答案 1 :(得分:1)
ListA.Where(x => x.Rank == 1)
.Select(x => new {
Max = x.Max,
Min = x.Min
})
.ToList();
答案 2 :(得分:1)
您应该检查GroupBy()
语句,然后按Rank
进行分组,然后选择Min
和Max
。
from x in ListA
group x by x.Rank into group
select new with {
Rank = group.Key,
Items = group.Select(y => new with { y.Min, y.Max })
}
这将为您提供每个等级Min
和Max
值的集合。如果您只想知道组的组合值,请使用:
from x in ListA
group x by x.Rank into group
select new with {
Rank = group.Key,
Min = group.Min(y => y.Min),
Max = group.Min(y => y.Max)
}
答案 3 :(得分:0)
var listAllRankOne = ListA.Where(x => x.Rank == 1).ToList()