我需要使用Linq查询获取每个记录实例的Icollection数据以及其他数据,我已经正确地完成了这项工作。
课程模型
public partial class Course
{
public Course()
{
this.StudentCourses = new HashSet<StudentCourse>();
}
public int CourseID { get; set; }
public string Title { get; set; }
public virtual ICollection<StudentCourse> StudentCourses { get; set; }
}
Student Model
public partial class Student
{
public Student()
{
this.StudentCourses = new HashSet<StudentCourse>();
}
public int StudentID { get; set; }
public string Name { get; set; }
public virtual ICollection<StudentCourse> StudentCourses { get; set; }
}
学生课程模型
public partial class StudentCourse
{
public int StudentCourseID { get; set; }
public int StudentID { get; set; }
public int CourseID { get; set; }
public virtual Course Course { get; set; }
public virtual Student Student { get; set; }
}
方法阅读记录
public void readStudents()
{
using (var db2 = new MyDbContext())
{
List<Student> _studentRead = new List<Student>();
_studentRead = (from b in db2.Students
orderby b.StudentID
select b).ToList() ;
}
}
class model
public partial class Student
{
public Student()
{
this.StudentCourses = new HashSet<StudentCourse>();
}
public int StudentID { get; set; }
public string Name { get; set; }
public virtual ICollection<StudentCourse> StudentCourses { get; set; }
}
第三部分问题
现在我得到了正确的结果,即可以使用以下语句查看学生和他们注册课程ID的列表:
using (var db2 = new MyDbContext())
{
List<Student> _studentRead = new List<Student>();
_studentRead = (from _student in db2.Students.Include(r=>r.StudentCourses)
select _student).ToList();
}
现在,如果我想像下面的图表所示那样读取courseIDs,我该如何将课程标题包含到我的linq语句中呢?