Если у меня есть запрос, который выглядит следующим образом:
var forms = repo.GetForms().Where(f => f.SubForms.Any(sf => sf.Classes.Any(c => c.TermId == termId)));
Из этого видно, что моя схема выглядит следующим образом:
Подформа
имеет много Класс
, у которого много Срок
.
Что я хочу:
Все Подформы
с их Классами
В конкретном Сроке
.
Сейчас происходит то, что я получаю всю Подформу
, которая имеет какой-либо Класс
в конкретном Терме
. Это означает, что SubForm
возвращается с ALL child Class
, а не только с теми, которые связаны с Term
.
Например, У меня есть 2 семестра, подформа с 2 классами в каждом семестре. Этот запрос возвращает 4 класса вместо 2 в этом конкретном термине.
Есть ли какой-нибудь Include ('Expression')
, который я могу использовать, чтобы сказать, что я хочу включить только все классы на основе условия? Или мой запрос неверен?