Sla*_*avo 1 .net c# reflection typedescriptor
大家好.我有以下情况.
我想使用TypeDescriptor来获取某种类型的属性.继承层次结构中类型的深度可能会有所不同.我只想获得在类型本身声明的属性,而不是在父类(base)中.问题是,当我调用TypeDescriptor.GetProperties()时,它会将继承层次结构中声明的所有内容返回到Object.
我只看到我可以按属性过滤输出,但我不想为我的类型中的属性添加另一个属性.让他们通过反射而不是使用TypeDescriptor会做我想要的,但对我来说不是一个选项,因为某些属性会在某些时候动态添加到类型中.
有任何想法吗?如果问题不明确,我可以提供一个例子.
您可以使用ComponentType属性过滤属性:
var properties = from p in TypeDescriptor.GetProperties(x).Cast<PropertyDescriptor>()
where p.ComponentType == x.GetType()
select p;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1985 次 |
| 最近记录: |