【发布时间】:2012-10-05 22:28:28
【问题描述】:
是否有一种简单的方法可以确定表达式是否包含未进一步包装的 ParameterExpression,例如 MemberExpression。
例子:
x => x.Method() ? x : null
x => x.Method() ? x.Property : null
简单地说,我的用例是我知道方法(无参数)和属性值,并想知道这是否足以在不从存储中获取整个“对象”的情况下评估表达式。
编辑: 我的例子可能是为了简化。还有更多的表达式类型需要处理(例如 UnaryExpression)。
x => ((Cast) x).Property
我正在寻找以下问题的答案:
给定一个表达式,如果我知道输入参数的所有方法返回值和属性值,但不知道参数值本身,我可以评估表达式吗?
【问题讨论】:
-
您使用的是什么版本的 .NET?
-
它是 .net 3.5(但我也有一个 .net 4 版本,我可以使用它)
标签: c# expression