gpt4 book ai didi

reflection - 使用反射获取属性时,如何将搜索限制在我感兴趣的子类上?

转载 作者:行者123 更新时间:2023-12-04 01:50:14 24 4
gpt4 key购买 nike

在使用反射成功地从程序集中获取特定类型的列表之后,我现在想要获取每个类型的公共(public)属性。

这些类型中的每一种都派生自至少一个基类。

我注意到,当我获得类型的属性时,我也从基类中获得属性。

我需要一种方法来过滤掉基类属性,并且只取回我调用 get 属性的类型的属性。

我认为这类似于我只从给定的基本类型获取基本类型的子类,不包括基本类型。

Assembly.GetAssembly(baseType).GetTypes().Where(type => type.IsSubclassOf(baseType)).ToList()

最佳答案

使用 BindingFlags.DeclaredOnly 在您调用 Type.GetProperties :

var properties = Type.GetProperties(BindingFlags.DeclaredOnly | 
BindingFlags.Public |
BindingFlags.Instance);

关于reflection - 使用反射获取属性时,如何将搜索限制在我感兴趣的子类上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1294299/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com