命名空间:System.Reflection
程序集:mscorlib.dll, netstandard.dll, System.Runtime.dll, System.Reflection.dll
将给定路径的程序集加载到只反射上下文中。
public static System.Reflection.Assembly ReflectionOnlyLoadFrom (string assemblyFile);
参数
assemblyFile String
包含程序集清单的文件的路径。
返回
Assembly
加载的程序集。
异常
ArgumentNullException
assemblyFile 为 null。
FileNotFoundException
未找到 assemblyFile,或者你正在试图加载的模块未指定文件扩展名。
FileLoadException
assemblyFile 已找到,但无法加载。
BadImageFormatException
assemblyFile 不是有效的程序集。
或 当前加载的是公共语言运行时 2.0 版或更高版本,而 assemblyFile 是用更高的版本编译的。
SecurityException
指定了不以“file://”开头的基本代码,且没有所需的 WebPermission。
PathTooLongException
程序集名称超过系统定义的最大长度。
ArgumentException
assemblyFile 为空字符串 ("")。
PlatformNotSupportedException
仅限 .NET Core:不支持此成员。
注解
依赖项不会自动加载到仅反射上下文中。 若要自动加载依赖项,请处理 ReflectionOnlyAssemblyResolve 事件,并在事件处理程序中加载依赖项。
不能执行已加载到仅反射上下文中的程序集的代码。 若要执行该代码,请加载具有 LoadFile 方法的程序集。
assemblyFile 参数必须引用没有转义符的 URI。 此方法为 URI 中的所有无效字符提供转义符。
为 assemblyFile 指定的路径是相对于当前目录的路径。 将程序集加载到调用方的域中。
仅反射上下文与其他上下文没有区别。 只能通过卸载应用程序域来卸载加载到上下文中的程序集。
安全性
FileIOPermission
用于读取以 "file://" 开头的 URI。 关联的枚举: Read、PathDiscovery
WebPermission
用于读取不以 "file://" 开头的 URI。
相关阅读 >>
Assembly.reflectiononlyload 方法
Assembly.reflectiononlyloadfrom(string) 方法
appdomain与Assembly的动态加载与卸载代码详解
更多相关阅读请进入《Assembly》频道 >>

C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。