我希望找到一种方法来否定用于筛选IQueryable序列的表达式。
所以,我有这样的东西:
现在我希望创建一个表达式,其结果为
所以,我有这样的东西:
Expression<Func<T, bool>> expression = (x => true);
现在我希望创建一个表达式,其结果为
(x => false)
- 所以基本上我想否定 expression
。
我发现自己的工作方法是这样的:
var negatedExpression =
Expression.Lambda<Func<T, bool>> (Expression.Not(expression.Body),
expression.Parameters[0])));
但我几乎确定有更好的方法-你能帮我吗?(类似于Not(expression)
,可能更好)。
Expression.Lambda.Blablabla
似乎过于繁琐)。 - Yippie-Ki-Yay