小菜先说一下环境应用,在福分系统中每天都有加分的记录,并且每次加分的分值是不同的。现在有一个这样的需求就是按照一定的时间段,求出某个人的所加的分值。并且按照分值排名。
该怎么着手呢?先求出这段时间的所有的记录,这个比较简单。难的地方在,这怎么通过人名(id),得到特定人的几条记录,然后得到总分,并且是不定向的几个人。
想不到linq语句很强大,它封装了这样的方法。来看一下!
listt = (from test in listTest //在这里进行一些改正 listStartTimeFin
group test by test.ClassmateID into tt
select new ClassifiySumModel()
{
StartDate = startTime,
EndDate = endTime,
GradeName = tt.Select(x => x.GradeName).First(),//原来是userGrade

本文介绍了如何在.NET环境中利用LINQ语句处理数据,特别是在面对需要将多个记录合并成一条记录并计算总分的场景。通过示例展示了如何从数据库中获取特定时间段内某个人的加分记录,然后对这些记录进行求和,以及如何通过LINQ的GroupBy方法将多条记录整合。最后,讨论了如何根据总分进行排名,确保相同分数的记录能正确分配排名。
最低0.47元/天 解锁文章
7336





