我需要从一个目录中的 DLL 加载所有程序集。
我的基本代码是:
var assemblies = from filename in Directory.GetFiles(HttpRuntime.BinDirectory, "*.dll")
select Assembly.LoadFrom(filename);
但是,如果该目录中有非托管 DLL,则 Assembly.LoadFrom 将失败。有没有只加载托管 DLL 的好方法?捕获加载异常是一种选择,但我想知道是否有更好的方法。
我的代码在 ASP.NET 上运行,在应用程序启动时。所以我也会接受一个 ASP.NET 特定的解决方案。
最佳答案
只需分别循环遍历它们并放入 Assembly.LoadFrom
在 try...catch
堵塞。
关于.net - 仅加载目录中的托管程序集 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7257787/