我想生成具有嵌套 AND 或 OR 条件的 LINQ 表达式树。我有以下表情
var constant = Expression.Constant("Jhon");
var property = Expression.Property(paramExpr,"FirstName");
var expression = Expression.Equal(property, constant);
constant = Expression.Constant("12");
property = Expression.Property(paramExpr, "Age");
var expression2 = Expression.Equal(property, constant);
expressionMain1 = Expression.AND(expression, expression2);
constant = Expression.Constant("Mathew");
property = Expression.Property(paramExpr,"LastName");
expression = Expression.Equal(property, constant);
constant = Expression.Constant("19");
property = Expression.Property(paramExpr, "Age");
expression2 = Expression.Equal(property, constant);
expressionMain2 = Expression.And(expression, expression2);
我想要最终的 lambda 查询,例如
(FirstName='John' AND Age='12') OR (LastName='Mathew' AND Age= '19')
最佳答案
这样可以吗?
Expression.OrElse(expressionMain1, expressionMain2)
关于c# - 创建具有多个 OR 和 AND 条件的 LINQ 表达式树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67104659/