所以這似乎很基本,但我不能得到它的工作。我有一個對象,我使用反射來獲取它的公共屬性。其中一個屬性是靜態的,我沒有運氣。如何獲得靜態屬性與反射
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反射器可以看到靜態屬性就好了,所以很明顯我在這裏丟失了一些東西。
這是真的,非常類似於此: http://stackoverflow.com/questions/392122/in-c-how-can-i-tell-if-a-property-is-static-net-cf -2-0 – ctacke 2009-01-16 18:42:24
那麼它們都使用BindingFlags。我正在尋找BindingFlags的特定組合,這將允許我獲得Public成員,無論是Static還是Instance。 – 2009-01-16 19:19:02