【发布时间】:2011-06-26 14:20:41
【问题描述】:
public static void Map<T>(Expression<Func<T, object >> expression)
{
var memberExpression = (expression.Body as UnaryExpression).Operand as MemberExpression;
var name = memberExpression.Member.Name;
}
用法:
Map<Article>(x => x.Name)
Name 是字符串类型。
我如何获得类型?
【问题讨论】:
-
您发布的代码对我不起作用。
x.Name不是UnaryExpression。此外,您不应该像您那样使用as。如果转换不成功,你会得到一个NullReferenceException,这不好,得到InvalidCastException会更清晰。
标签: c# generics expression expression-trees