Use WhereIn for experiment course grade aggregation

This commit is contained in:
biss committed 2026-08-17 20:30:03 +08:00
1 parent e70d71cb67
commit ce8982dba9
1 file changed
+2 -3
@@ -252,9 +252,8 @@ public sealed class ExperimentGradesController(
.ToListAsync(cancellationToken);
var taskIds = results.Select(x => x.TeachingTaskId).Distinct().ToArray();
var aggregates = await db.ExperimentCourseGrades.AsNoTracking()
.Where(x =>
x.StudentId == student.Id &&
taskIds.Contains(x.TeachingTaskId))
.Where(x => x.StudentId == student.Id)
.WhereIn(taskIds, x => x.TeachingTaskId)
.ToDictionaryAsync(x => x.TeachingTaskId, cancellationToken);
var courses = results
.GroupBy(x => x.TeachingTaskId)