У меня есть отношение mant-ко-многим, смоделированное в базе данных (с таблицей мостов) между Студентом и Профессором (_students_selected), в моих энтузиазмах я смоделировал его как отношение один-ко-многим, то есть Профессор имеет одноСтудент.
HasManyToMany<Student>(Reveal.Member<Professor>("_students"))
.Table("_students_selected").ChildKeyColumn("student_key").ParentKeyColumn("professor_key");
public class Professor
{
private IList<Students> _students;
public virtual Student Student
{
get { return _students.FirstOrDefault(); }
}
}
Вышеописанное работает при получении данных, однако при запросах к профессорам я не могу добавить условие «где» для студентов, потому что фактические данные сопоставлены с частным вспомогательным полем _students.Как я могу запросить это?код ниже не работает.
_unitOfWork.Session.QueryOver<Professor>().Where(i => i.Student.Id == 24).List();