否定表达式树中的方法调用

LJW*_*LJW 1 c# linq expression-trees

我正在动态生成ac#Linq表达式,如下所示(将在下面的示例中)运行string.Contains对集合值.

var dynamicMethod = "Contains";
var parameter = Expression.Parameter(typeof (MyClass), "type");
var property = Expression.Property(parameter, "MyProperty");
var constantValue = Expression.Constant("PropertyValue", property.Type);
var method = property.Type.GetMethod(dynamicMethod, new[] {property.Type});
var expression = Expression.Call(property, method, constantValue);
Run Code Online (Sandbox Code Playgroud)

对于上面的代码,我想要的东西相当于!包含.

有什么建议?

谢谢.

Jb *_*ain 9

那么Expression.Not呢?那只是:

var condition = Expression.Not (contains_call);
Run Code Online (Sandbox Code Playgroud)