我有以下存储库方法: -
public IQueryable<AccountDefinition> FindAccountDefinition(string q)
{
return from ad in entities.AccountDefinitions.Include(a => a.SDOrganization)
where (q == null || ad.ORG_NAME.ToUpper().StartsWith(q.ToUpper()) )
select ad;
}
但是因为我正在应用.include然后.where,所以我不确定如何执行上述内容? 是否将从Dataabse中检索SDOrganization导航属性以获取与where子句匹配的记录,或者导航属性是否将停用,然后进行过滤?
答案 0 :(得分:1)
AccountDefinition
的过滤器将在数据库中执行。对于与过滤器匹配的每一行(不是表格中的所有AccountDefinition
行),SDOrganization
将被加入。匹配的AccountDefinition
及其相关的SDOrganization
将返回给客户。