这个问题在这里已有答案:
- 如何查找从特定类型C#继承的程序集中的所有类型 4个答案
- 获取类型的所有派生类型 6个答案
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