我如何获得 a 的值MemberInfo
目的?.Name
返回变量的名称,但我需要该值。
我认为你可以这样做FieldInfo
但我没有代码片段,如果你知道如何做到这一点,你可以提供一个代码片段吗?
Thanks!
虽然我总体上同意 Marc 关于不反映字段的观点,但有时还是需要它。如果你想反映一个成员并且你不关心它是字段还是属性,你可以使用这个扩展方法来获取值(如果你想要类型而不是值,请参阅nawful的回答这个问题 https://stackoverflow.com/questions/15921608/getting-the-type-of-a-memberinfo-with-reflection):
public static object GetValue(this MemberInfo memberInfo, object forObject)
{
switch (memberInfo.MemberType)
{
case MemberTypes.Field:
return ((FieldInfo)memberInfo).GetValue(forObject);
case MemberTypes.Property:
return ((PropertyInfo)memberInfo).GetValue(forObject);
default:
throw new NotImplementedException();
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)