从文件加载程序集并调用 GetExportedTypes

问题描述

我在 .Net framework 4.5 下有一个应用程序,它可以从文件中打开一个程序集并将其中的类型作为数组返回,然后我可以使用它。

我需要将该应用程序更新到 .Net 5,当我在其上调用 GetTypes 或 GetExportedTypes 时,它会引发 FileNotFoundException。我知道原因是该 dll 中存在嵌入式依赖关系,但我不介意忽略其中包含的任何类型。我只需要基本 dll 中的类型。无论如何,我似乎无法找到任何方法来检索类型而不会遇到此异常,并在谷歌上搜索了新的正确方法来执行此操作,但无济于事。

这是过去在 .Net 框架中工作的简化代码块。

    private bool CheckAssembly(FileInfo assemblyPath)
    {
        var asm = Assembly.LoadFrom(assemblyPath.FullName);

        var types = asm.GetExportedTypes();

        ...
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)