Linq表达式,获取参数?

时间:2011-08-23 09:14:35

标签: c# linq lambda expression

我有一个linq表达式,

internal T Execute<T>(System.Linq.Expressions.Expression<Func<int, string, T>> expr)
{
    var paramInt = ??;
    var paramString = ??;
}

我用这个方法调用这个方法:

Expression<Func<int, string, Guid>> myExpression2 = (a,b) => Callmethod(a, b, 5);

Execute<Guid>(myExpression2);

如何从执行方法中的表达式中获取参数?

- 澄清 -

我想从参数中获取值,以便我用它们进行一些计算。

1 个答案:

答案 0 :(得分:3)

好吧,您可以使用Parameters属性获取参数。

var parameters = expr.Parameters;

但是,每个都是ParameterExpression。这将为您提供参数名称和类型,但不清楚您想用它们做什么。