DefinedTypes 属性 从内存动态加载程序集时抛出错误
DefinedTypes property throws an error when an assembly is loaded from memory dynamically
我正在尝试动态加载我项目的一些程序集。
当我像 Assembly.LoadFile(path)
这样通过它们的文件路径加载它们时,我可以通过从加载的程序集中调用 GetTypes()
方法来获取它们定义的类型。
var asm = Assembly.LoadFile(path);
var defienedTypes = asm.GetTypes(); //I've got all types without any error
但是当我像 Assembly.Load(System.IO.File.ReadAllBytes(path))
这样从内存中加载它们时,我无法检索定义的类型。所以调用 GetTypes()
方法会导致错误:
Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information
并且 LoaderExceptions 属性 包含所有已定义的类型。
确保程序集使用的所有必需引用都已正确加载。
'LoaderException' 属性 在 Exception 对象中告诉您哪些类型不可检索。
我正在尝试动态加载我项目的一些程序集。
当我像 Assembly.LoadFile(path)
这样通过它们的文件路径加载它们时,我可以通过从加载的程序集中调用 GetTypes()
方法来获取它们定义的类型。
var asm = Assembly.LoadFile(path);
var defienedTypes = asm.GetTypes(); //I've got all types without any error
但是当我像 Assembly.Load(System.IO.File.ReadAllBytes(path))
这样从内存中加载它们时,我无法检索定义的类型。所以调用 GetTypes()
方法会导致错误:
Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information
并且 LoaderExceptions 属性 包含所有已定义的类型。
确保程序集使用的所有必需引用都已正确加载。
'LoaderException' 属性 在 Exception 对象中告诉您哪些类型不可检索。