linq表达式谓词添加在哪里子句



我想在以下表达式中添加额外的"子句。

public Task<IEnumerable<MyClass>> Find(Expression<Func<MyClass, bool>> predicate)
 {
   return _documentDbProvider.Find(predicate);
 }

例如 .where(t=>t.tenantId == tenant.id)

所以我的DB提供商获得了两个" where"条款,谢谢

看起来您正在寻找一种使用And将现有谓词与另一个谓词相结合的方法。您可以使用一些表达式谓词构建器助手类 - 例如通用谓词构建器或我自己的PredicateUtils从Linq的两个列表之间建立链接与子句帖子和类似的实体之间的链接。它允许您使用类似的东西:

return _documentDbProvider.Find(predicate.And(t => t.tenantId == tenant.id));

最新更新