Ral*_*lph 11 c# reflection visibility
我在命名空间Domain中有B类及其父类A.
然后我在名称空间Reflect中有一个Reflection Util.如果我使用这一行
instanceOfB.GetType().GetFields(BindingFlags.NonPublic
| BindingFlags.Public | BindingFlags.Instance );
Run Code Online (Sandbox Code Playgroud)
要查找所有字段(a和b),我只得到b.但是,当我a受到保护或公开时,我也会发现它们.
我还需要做些什么才能找到基类的私有字段?
Jon*_*eet 14
这是记录在案的行为:
指定BindingFlags.NonPublic以在搜索中包含非公共字段(即私有,内部和受保护字段).仅返回基类上的受保护和内部字段; 不返回基类上的私有字段.
如果您需要获取私有字段,则需要询问基本类型.(Type.BaseType用于查找基本类型,并调用GetFields它.)