获取项目中的所有类名称



可能的重复项:
C#:列出程序集中的所有类

如何使用反射获取特定项目中的所有类名?


编辑 1(

是否可以区分程序员定义的类和内置类?

可以使用

Type[] types = Assembly.GetExecutingAssembly().GetTypes() 获取包含此代码行的程序中的所有类型;Type类具有 Name 属性。

前面的两张海报是正确的。但是,如果需要所有引用程序集及其类型的列表,则可以执行以下操作:

var referencedAssemblies = Assembly.GetExecutingAssembly().GetReferencedAssemblies();
var referencedTypes = referencedAssemblies.SelectMany(x => Assembly.Load(x.FullName).GetTypes());

这将给出来自核心库、第三方等引用和使用的所有类型的列表,如果您不使用程序集但引用了它,它不会列出其类型。

它不是很有用,因为它列出了来自System和System.Core等的数千种类型,但我不完全确定您要实现的目标,因此这可能是一个开始。

使用Assembly.GetTypes方法

相关内容

  • 没有找到相关文章

最新更新