我没有什么问题。我在互联网上找到了这个:
Type t = typeof(MyClass);
MethodInfo[] mi = t.GetMethods();
有没有办法如何对命名空间做同样的事情?或者有没有其他方法来获取所有具有名称和System.Type实例的类?很久以前我发现了一些关于列出图书馆的东西。请有人帮助我。
答案 0 :(得分:2)
如果要获取特定命名空间中的所有类,可以执行以下操作:
var types = from type
in AppDomain.CurrentDomain.GetAssemblies().SelectMany(a => a.GetTypes())
where type.Namespace == "System"
select type;
这将查看名称空间System
中任何类型的所有已加载程序集。您当然可以将“系统”更改为您想要的任何其他内容,例如“System.IO”。
答案 1 :(得分:2)
您可以使用此小hack mscorlib
从typeof(string).Assembly.GetTypes()
程序集中获取所有类。您可以按FullName
或Namespace
属性进一步对其进行过滤。