【发布时间】:2014-10-29 02:39:28
【问题描述】:
我有一个接受 linq 查询的方法:
public IEnumerable<User> GetAll(System.Linq.Expressions.Expression<Func<UserDTO, bool>> query)
{
return GetAllDTO(query);
}
我希望能够在这个现有查询中附加一个额外的 WHERE 子句,使其看起来像这样:
public IEnumerable<User> GetAll(System.Linq.Expressions.Expression<Func<UserDTO, bool>> query)
{
return GetAllDTO(query).Where(x => x.Organisation == "something")
}
但这将加载所有与查询匹配的记录,然后应用 where 子句。我想将 where 子句添加到原始查询中,以便只返回匹配两者的记录。
【问题讨论】:
-
不要修改
GetAllDTO(...)的结果。在调用方法之前修改query。