所以这看起来很基本,但我无法让它工作。我有一个对象,我正在使用反射来获取它的公共属性。这些属性之一是静态的,我没有运气。
Public Function GetProp(ByRef obj As Object, ByVal propName as String) as PropertyInfo
Return obj.GetType.GetProperty(propName)
End Function
上面的代码适用于公共实例属性,到目前为止,这就是我所需要的。假设我可以使用 BindingFlags 来请求其他类型的属性(私有、静态),但我似乎找不到正确的组合。
Public Function GetProp(ByRef obj As Object, ByVal propName as String) as PropertyInfo
Return obj.GetType.GetProperty(propName, Reflection.BindingFlags.Static Or Reflection.BindingFlags.Instance Or Reflection.BindingFlags.Public)
End Function
但是,请求任何静态成员仍然没有返回任何内容。.NET 反射器可以很好地看到静态属性,所以很明显我在这里遗漏了一些东西。