首页 > 解决方案 > 绑定标志中的管道是否不代表“或”

问题描述

我目前正在即时窗口中调试:

-

这将返回 0 个属性:

type.GetProperties(BindingFlags.Instance)

这也返回 0 个属性:

type.GetProperties(BindingFlags.Public)

但这会返回两个属性:

type.GetProperties(BindingFlags.Instance|BindingFlags.Public)

这也是如此:

type.GetProperties(BindingFlags.Public|BindingFlags.Instance)

我会认为,如果是这样,or那么如果底部都返回true,那么前两个也应该返回。

有人可以向我解释一下这是如何工作的吗?

标签: c#reflectionbindingflags

解决方案


请参阅GetProperties的文档。您必须指定可见性(公共/私有)以及它应该是静态属性还是实例属性。


推荐阅读