我有以下数据模型:
public class Course
{
public int CourseId { get; set; }
public int StateId { get; set; }
}
public class CompletedCourse
{
public int CompletedCourseId { get; set; }
public int UserId { get; set; }
public Course Course { get; set; }
public string LicenseNumber { get; set; }
}
public class License
{
public int LicenseId { get; set; }
public int UserId { get; set; }
public int StateId { get; set; }
public string LicenseNumber { get; set; }
}
我正在尝试提出一个IQueryable
forCompletedCourses
并且我想从我的 Licenses 表中填充选择CompletedCourse.LicenseNumber
的LicenseNumber
属性,并匹配已完成的课程记录。FirstOrDefault()
UserId
StateId
这是我的查询,但我认为这不能正确处理重复的许可证:
var entries =
(from course in context.CompletedCourses
join license in context.Licenses on course.UserId equals license.UserId
where license.StateId == course.Course.StateId
select course)
.Include(x => x.Agent)
.Include(x => x.Course.State);
这是可以在单个查询中完成的吗?提前致谢。