public ActionResult Index()
{
ClassDM xx = new ClassDM();
var result = (from a in db.ScoreInfo
from b in db.UserInfo
from c in db.CourseInfo
from d in db.ClassInfo
where a.UserID == b.UserID && a.CourseID == c.CourseID && b.ClassesID == d.ClassesID
select new ScoreDM
{
ScoreID = a.ScoreID,
UserName = b.UserName,
IDNum = b.IDNum,
UsualScore = a.UsualScore,
MiddleScore = a.MiddleScore,
FinalScore = a.FinalScore,
AbsentTime = a.AbsentTime,
GeneralScore = a.GeneralScore,
ClassesName = d.ClassesName,
CourseName = c.CourseName
}).ToList();
var lista = (from s in result
group s by s.ClassesName into g
select new ScoreDM
{
ScoreID = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().ScoreID,
UserName = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().UserName,
IDNum =g.OrderByDescending(m => m.ScoreID).FirstOrDefault().IDNum,
UsualScore = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().UsualScore,
MiddleScore = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().MiddleScore,
FinalScore = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().FinalScore,
AbsentTime = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().AbsentTime,
GeneralScore = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().GeneralScore,
ClassesName = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().ClassesName,
CourseName = g.OrderByDescending(m => m.ScoreID).FirstOrDefault().CourseName
}).ToList();
xx.Scorelist = lista;
var pageSizeNum = 3;//每页显示多少条
var ItemNum = lista.Count();//数据总数
var pageNum = (ItemNum % pageSizeNum) == 0 ? (ItemNum / pageSizeNum) : (ItemNum / pageSizeNum) + 1;//总页数
int pageNumber = 1;
xx.pagecount = pageNum;
xx.pagenow = pageNumber;
xx.Classlist = JsonConvert.SerializeObject(lista.OrderBy(x => x.ScoreID).Skip((pageNumber - 1) * pageSizeNum).Take(pageSizeNum).ToList());
return View(xx);
}
Mvc数据分组
最新推荐文章于 2022-03-12 21:32:05 发布