这必须有一个简单的答案——我有一段代码看起来像这样......
condition = Expression.Call(memberAccess,
typeof(string).GetMethod("Contains"),
Expression.Constant(value));
lambda = Expression.Lambda(condition, parameter);
效果很好……但我还想要一个 NotContains。我是否必须编写一个扩展方法,或者是否有一种方法可以简单地执行 ![lambda]?
最佳答案
用 Expression.Not
包围:
condition = Expression.Not(Expression.Call(memberAccess,
typeof(string).GetMethod("Contains"),
Expression.Constant(value)));
lambda = Expression.Lambda(condition, parameter);
关于c# - Lambda 表达式——将逻辑非应用于 bool 方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4092168/