这里执行现有的表达式是一个简单的类LINQ表达式来对孩子财产
public class Parent
{
public Child Child { get; set; }
}
下面是我想要实现
Expression<Func<Parent, long>> GetChildIDExpr(Expression<Func<Child, long>> objectIdExpr)
{
//So I need to return an expression that can accept a Parent
//and apply the given expression to its Child property.
}
听起来很简单的方法,但我可以不要解决它!
我该如何实现这种方法?
编辑:
我使用LINQ到实体因此调用Expression.Invoke
是行不通的。
通过执行现有的表达你的意思为过滤器像'parents.whereChild(express)'? – 2012-07-05 18:52:42
基本上说'objectIdExpr = obj => obj.ID',我需要一个实体做'p => objectIdExpr.Invoke(p.Child)' – Connell 2012-07-05 18:55:42
检查我的答案,@ SPFiredrake是正确的,我的答案是一样的想法烤成一个很好的lib – Guillaume86 2012-07-06 17:41:03