我喜欢获取 ID 为 9 的最大样本数
var samplecount = dbContext.ChemDetails
.GroupBy(a => a.Id == 9)
.Select(a => a.Max(w => w.Sample_Num))
.FirstOrDefault();
我从上面得到的是最大值,而不是 Id == 9。
你只需要一个Where
子句,然后取最大值:
var maxNumber = dbContext.Where(a => a.Id == 9).Max(a => a.Sample_Num);
如果您想获得每个 的最大值Id
,那么您应该使用GroupBy
.
Dictionary<int,int> MaxLookup = dbContext.ChemDetails
.GroupBy(a => a.Id)
.ToDictionary(g => g.Key, g => g.Max(item => item.Sample_Num));
int maxForId9 = 0;
if (MaxLookup.ContainsKey(9)) maxForId9 = MaxLookup[9];