需要将表达式中的 Expression.Or 替换为 Expression.OrElse。在表达式树中,Expression.Or 对应于位运算符 OR(|),而 Expression.OrElse 对应于逻辑运算符 OR(||),后者才是 SQL 中使用的正确逻辑运算符。
This commit is contained in:
parent
80745e5cb4
commit
dc2117a3d8
@ -52,7 +52,7 @@ public static class SqlSugarFilterExtension
|
||||
}
|
||||
|
||||
Expression left = Expression.Equal(temp, Expression.Constant(owner));
|
||||
right = Expression.Or(left, right);
|
||||
right = Expression.OrElse(left, right);
|
||||
});
|
||||
});
|
||||
var finalExpression = Expression.Lambda(right, new ParameterExpression[] { parameter });
|
||||
|
||||
Loading…
Reference in New Issue
Block a user