14
Jaki jest prawidłowy lub solidny sposób oceny System.Linq.Expressions.Expression
w celu uzyskania wartości (obiektu)?Jak ocenić System.Linq.Expressions.Expression
Jaki jest prawidłowy lub solidny sposób oceny System.Linq.Expressions.Expression
w celu uzyskania wartości (obiektu)?Jak ocenić System.Linq.Expressions.Expression
Ja wstępnie przy użyciu następujących, ale nie wiem, czy jest to preferowana metoda:
public static object Evaluate(Expression e)
{
//A little optimization for constant expressions
if (e.NodeType == ExpressionType.Constant)
return ((ConstantExpression)e).Value;
return Expression.Lambda(e).Compile().DynamicInvoke();
}
Co jeśli wyrażenie jest parametryzowane wyrażenie lambda? – phoog
Dobre pytanie ... W moim przypadku użycia, nigdy nie powinienem uzyskać wyrażenia lambda, sparametryzowanego lub nie. (Dodam czek na to.) –