C# 来自委托的属性信息
假设委托中的属性是一个简单的属性选择器,是否有一种简单的方法来获取该属性的PropertyInfo 例如:C# 来自委托的属性信息,c#,reflection,delegates,C#,Reflection,Delegates,假设委托中的属性是一个简单的属性选择器,是否有一种简单的方法来获取该属性的PropertyInfo 例如: var propertyInfo = Method<MyClass,int>(s => s.Property); ... PropertyInfo Method(Func<T1,T2> selector) { // What goes here? } var-propertyInfo=Method(s=>s.Property); ... Prope
var propertyInfo = Method<MyClass,int>(s => s.Property);
...
PropertyInfo Method(Func<T1,T2> selector)
{
// What goes here?
}
var-propertyInfo=Method(s=>s.Property);
...
PropertyInfo方法(函数选择器)
{
//这里有什么?
}
使用表达式,您可以:
static PropertyInfo ExtractProperty<T>(Expression<Func<T>> selector)
{
return (selector.Body as MemberExpression).Member as PropertyInfo;
}
静态属性信息提取属性(表达式选择器)
{
返回(selector.Body作为MemberExpression).Member作为PropertyInfo;
}
是的,必须是表达式树而不是委托