gpt4 book ai didi

c# - 如何从从另一个文件夹中加载的程序集中获取类型?

转载 作者:太空狗 更新时间:2023-10-29 19:58:46 24 4
gpt4 key购买 nike

我使用以下代码:

Assembly.LoadFile("the assembly in another folder");
var type = Type.GetType("the full name of the type");

即使程序集已经在这行代码之前加载,它总是在 type 中返回 null。

PS:我确实传入了程序集限定名,包括命名空间、类型名、程序集名、版本和公共(public) token 。

最佳答案

Type.GetType 仅搜索调用程序集中的类型和 mscorlib.dll 中的类型,除非您传递该类型的程序集限定名称。 See here.

编辑

Type.GetType 似乎只能从 Load 上下文中的程序集中检索 Type 实例。使用 LoadFile 加载的程序集位于 no context 中那些使用 LoadFrom 加载的在 Load From 上下文中;这些上下文都不允许您使用 Type.GetType,因此解析将失败。 This article显示当Assembly 所在的目录被添加为探测 privatePath 时,可以检索 Type 信息,因为它将最终出现在 Load 上下文中,但会失败其他语境。

关于c# - 如何从从另一个文件夹中加载的程序集中获取类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8012724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com