我有一个在类上创建的表达式。它是根据特定要求以编程方式创建的。保存在exp
类型的变量Expression<Func<Employee, bool>>
中的此类表达式的示例是 -
{ p2 => p2.name.Select((item, index) => new { item, index }).Any(p2.salary > 10000) }
我在empDetails
类型的变量List<Employee>
中拥有源数据。我想在exp
上执行上述表达式empDetails
。
答案 0 :(得分:0)
使用中的表达式错误,如果您尝试编写它,则会出现编译时错误。
我使用更简单的表达式作为例子。
Expression<Func<Employee, bool>> ext = (p) => p.salary > 10000;
list.Where(ext.Compile());
ext.Compile()转换表达式&gt;到一个功能。然后它可以用于任何采用Func的方法:Where,First,FirstOrDeafult,Single,SingleOrDeafult,Any,All ....