【发布时间】:2015-04-11 14:41:57
【问题描述】:
我返回了列表 testList,其中包含 5 个具有正确值的项目。
var testList = _context.LectureReportStudent
.Include(x => x.LectureReport)
.Include(x => x.LectureReport.Lecture)
.Include(x => x.Student)
.Where(x => stuIds.Contains(x.LectureReport.LectureId))
.Select(x => new StudentModel
{
Name = x.Student.FirstName + "" + x.Student.LastName,
Position = x.Student.JobTitle,
JobId = x.LectureReport.LectureId,
StudentId = x.StudentlId,
LectureId = x.LectureReportId,
Date = x.Date
};
我进一步GroupBy这个名单上StudentId。
var result = testList.GroupBy(x => x.StudentId)
每个项目都有以下型号
Date, DaysOnLecture, LectureCount, LectureId, LectureReportId, Name, StudentId, Position
我正在尝试获取 Count of DaysOnLecture、LectureCount 属性。
LectureCount 表示没有。学生参加讲座的次数(在我的模型中定义)。
DatsOnLecture 学生参加本次讲座的天数(在我的模型中定义)。
我对逻辑感到震惊。有什么想法吗?
【问题讨论】:
-
在投影中您没有选择要计算的属性
-
我没有添加它们,因为它们是计算值。例如,如果我添加它们,我应该为它们分配什么值?
-
当你说“每个项目都有以下型号...”时,项目是什么?
-
LectureId与LectureReportId不同吗?即,这是主外键关系吗? -
是的,肖恩,它是主外键
标签: c# linq entity-framework linq-to-entities