GetMembersは継承メンバを取得しない(.net)

GetMembersは.netのリフレクション機能で、クラスに定義されたメンバを取得する。
継承された属性も取得するものだと思い込んでいたが、勘違いだった。
以下は継承メンバも取得する処理。

'Dim t As Type
Dim bindingAttr As 
	System.Reflection.BindingFlags = 
        System.Reflection.BindingFlags.Public Or
        System.Reflection.BindingFlags.Instance Or 
        System.Reflection.BindingFlags.Static Or 
        System.Reflection.BindingFlags.NonPublic
Do While Not IsNothing(t) AndAlso Not t.Equals(GetType(Object))
    For Each info As System.Reflection.MemberInfo
                                  In t.GetMembers(bindingAttr)
        ' info
    Next
    t = t.BaseType
Loop

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です