如何在C#中获取程序集列表?

时间:2009-01-15 19:31:16

标签: c# reflection assemblies

我需要在目录中获取程序集列表。还有另外一种方法吗?

System.IO.Directory.GetFiles(directory, "*.dll")

1 个答案:

答案 0 :(得分:4)

托管程序集也可以是EXE。而您的代码只获取扩展名为“dll”的文件。还将返回非组件的Ntive DLL。

在我需要执行此操作的少数情况下,我只获得了所有文件的列表(类似于您所做的),然后使用Assemby.LoadFrom尝试加载每个文件,在事件中捕获异常当地人。典型的异常是ReflectionTypeLoadException,但如果无法解析引用,也可能会得到这个异常。