问题 如何获取基类的所有继承类? [重复]


这个问题在这里已有答案:


5273
2017-11-03 03:45


起源

在设计或运行时?如果设计然后你可以参考这个问题的一些提示 stackoverflow.com/questions/282377/... - Marek Karbarz
在运行时,谢谢。 - Carlsberg


答案:


这并不快,但只要 Foo 是一个具体的类型(不是一个接口),那么它应该工作。 Foo 本代码不返回本身。

AppDomain.CurrentDomain.GetAssemblies()
                       .SelectMany(assembly => assembly.GetTypes())
                       .Where(type => type.IsSubclassOf(typeof(Foo)));

15
2017-11-03 03:49



我认为没有更快的方法可以做到这一点。 - SLaks