两个实体上的LinqKit Predicate Builder

时间:2015-04-23 17:34:17

标签: c# linq entity-framework predicatebuilder

我有下面的linq查询,我试图让它变得动态。在此查询中,仅员工ID上的条件是动态的。其他条件将始终适用。

from ce in Context.ComponentEnrollments
join ep in Context.EnrollmentPersons on ce.Id equals ep.EnrollemntId
join c in Context.Components on ce.ComponentId equals c.Id
where ep.Employee.Id == "1234" && (keyword.Contains(ce.Field1) || keyword.Contains(ce.Field2))
select new SearchResult
{
  //select columns 
  // columns in the where clause are not part of the select list
};

这是一个非常古老的数据库,ComponentEnrollments与其他表没有FK,我现在无法创建它。

var predicate = PredicateBuilder.True<EnrollmentPerson>();
predicate.And(p>p.Employee.Id == "1234");

如何将其他两个条件添加到此谓词中,因为它们来自不同的实体?

0 个答案:

没有答案