【发布时间】:2011-03-22 08:48:25
【问题描述】:
使用具有一对多关系的两个表(例如 Make -> Model),如何在 IQueryable 函数中返回具有有限 Model 子级的 Make?
当我将“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")
这显然在语法上不正确,因为 Where 子句中的 .Model 是一个实体集合,没有 .ModelName 属性。
如何限制包含的表格?这在 LINQ to Entities 中可行吗?
【问题讨论】:
标签: c# linq-to-entities iqueryable