简体   繁体   English

如何在Expression.Or中设置多于2个表达式

[英]How to set more than 2 Expression in Expression.Or

I want to create a query which has more than 3-4 Expression.Or ? 我想创建一个超过3-4 Expression.Or的查询? But Expression.Or just let me to add two Expressions inside it. 但Expression.Or只是让我在其中添加两个表达式。

if (!string.IsNullOrEmpty(keyword))
                query
                    .Add(Expression.Or(
                             Expression.Like("Name", keyword, MatchMode.Anywhere),
                             Expression.Like("LastName", keyword, MatchMode.Anywhere)))
                    .Add(Expression.Or(
                             Expression.Like("Email1", keyword, MatchMode.Anywhere),
                             Expression.Like("Email2", keyword, MatchMode.Anywhere)));

The code above generates "Name like %this% or LastName like %this% AND Email1 like %this% and Email2 like %this. 上面的代码生成“名称像%this this或LastName like%this% AND Email1 like%this%和Email2 like%this。

Thanks in advance. 提前致谢。

使用Disjunction而不是Or。

You can also use || 你也可以使用|| instead of Or( ) or Disjunction( ). 而不是Or()或Disjunction()。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM