我正在动态生成一个c#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);
对于上面的代码,我想要的东西等同于!Contains。
有什么建议吗?
感谢。