Используя две таблицы с отношением один ко многим (например, Make -> Model), как я могу вернуть Make с ограниченным потомком Model в функцию IQueryable?
Когда я передаю «camry» как переменную, я хочу вернуть Toyota Make с только детьми, называемыми «camry», а не всеми детьми. По сути, я хочу воссоздать этот оператор SQL:
SELECT
MakeName,
ModelName
FROM
Make
LEFT OUTER JOIN Model ON Model.MakeId = Make.MakeId
WHERE
Model.ModelName = 'camry'
Пока оператор LINQ будет выглядеть так:
return this.ObjectContext.Make
.Include("Model")
.Where(make => make.Model.ModelName.Equals("camry")
Это, очевидно, не является синтаксически правильным, потому что .Model в предложении Where является коллекцией сущностей и не имеет свойства .ModelName.
Как вы ограничиваете включенные таблицы? Возможно ли это в LINQ to Entities?