【发布时间】:2010-04-07 02:24:02
【问题描述】:
在 Linq 中是否有一个方法调用会直接在 List<V> 上应用表达式树?例如,如果我有一个基于 Order 类型的表达式树,并且我有一个 List<Order> 项目集合,我需要在这些项目上应用此表达式。
我正在寻找类似于:
class OrderListStore : IQueryable<V>,
<other interfaces required to implement custom linq provider>
{
List<Order> orders;
public Expression Expression
{
get { return Expression.Constant(this); }
}
IEnumerator<V> IEnumerable<V>.GetEnumerator()
{
//Here I need to have a method that will take the existing expression
//and directly apply on list
something like this .. Expression.Translate(orders);
}
}
我们非常感谢这方面的任何帮助。
【问题讨论】:
-
Select也可以这样使用 -
非常非常模糊的问题。您能否举一个更具体的例子来说明
Expression可能是什么以及“应用”在这里意味着什么?在您的代码中,您的“表达式”只是一个常量,因此很难看出如何通过某种Translate方法将this表达式“应用”到orders。
标签: c# .net linq expression-trees