Я хочу создать запрос linq to sql, который будет возвращать список объектов с отфильтрованным подсписком.
Звучит просто, но я не уверен, как заставить это работать
Вот SQL-запрос, который возвращает то, что я хочу:
select * from Texts t inner join Translations tt on t.TranslationId = tt.Id
inner join Pages p on tt.Id = p.TranslationId and tt.NeutralText = p.TitleNeutralTextId
where t.LanguageId = 1
Теперь я должен написать это с помощью linq.
То, что я до сих пор делал, это:
var query = this.Queryable() // Page entity
.AsNoTracking()
.Include(x => x.TitleTranslation.Texts);
return (from m in query
from l in m.TitleTranslation.Texts
where m.TitleTranslation.Texts.Any(l => l.LanguageId == 1)
select m);
Но это не сработало, потому что я получил подсписок со всеми языками вместо языка с только идентификатором № 1.
Спасибо за помощь,
David