在Xamarin PCL中,我正在尝试获取我编写的类的System.Reflection.PropertyInfo,以便我可以通过其字符串名称访问其属性来获取/设置,并且缺少Type.GetTypeInfo() ,以及Type.GetProperties。但System.Reflection.PropertyInfo是一个有效的类。我怎样才能获得课程的属性信息?我是否必须为每个平台编写一个包装器? (它在Android / iOS项目中表现得很好。)
答案 0 :(得分:32)
这是一个扩展,所以你需要把
using System.Reflection;
在顶部。然后就可以了:
TypeInfo typeInfo = this.GetType().GetTypeInfo();
foreach (PropertyInfo propInfo in typeInfo.DeclaredProperties)
答案 1 :(得分:22)
我刚刚碰到这个,很确定答案是使用:
Type.GetRuntimeProperties
答案 2 :(得分:0)
您也可以尝试
using System.Reflection;
Type t = typeof(YOURTYPE);
var properties = t.GetTypeInfo().DeclaredProperties