Csharp/C#教程:如何查找作为基类直接后代的类型?分享


如何查找作为基类直接后代的类型?

我需要获得所有类型的程序集inheritance一些基类但只有第一个后代。 例如,如果我有:

class Base { } class FirstClass : Base { } class SecondClass : FirstClass { } 

现在

 var directOnes = assembly.GetTypes().Where(t => t.IsSubclassOf(typeof(Base))); 

应该只返回FirstClass而不是SecondClass 。 有办法找出来吗?

您可以使用Type.BaseType代替IsSubclassOf()

例如

 var directOnes = assembly.GetTypes().Where(t => t.BaseType == (typeof(Base))); 

(仅供参考:我认为没有办法找到类型直接实现的接口 。)

上述就是C#学习教程:如何查找作为基类直接后代的类型?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/949089.html

(0)
上一篇 2021年11月17日
下一篇 2021年11月17日

精彩推荐