Каков правильный или надежный способ оценки System.Linq.Expressions.Expression
для получения значения (объекта)?
Как оценить выражение System.Linq.Expressions.Expression
Ответ 1
Я предварительно использую следующее, но не знаю, является ли это предпочтительным методом:
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();
}