System.AppDomain.CreateInstanceFromAndUnwrap 方法 (String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

方法描述

创建在指定的程序集文件中定义的指定类型的新实例,指定是否忽略类型名称的大小写,并指定绑定特性和用于选择要创建的类型的联编程序、构造函数的参数、区域性以及激活特性。

语法定义(C# System.AppDomain.CreateInstanceFromAndUnwrap 方法 (String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[]) 的用法)

public Object CreateInstanceFromAndUnwrap(
	string assemblyFile,
	string typeName,
	bool ignoreCase,
	BindingFlags bindingAttr,
	Binder binder,
	Object[] args,
	CultureInfo culture,
	Object[] activationAttributes
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
assemblyFile System-String 定义所请求类型的程序集的文件名和路径。
typeName System-String Type.FullName 属性返回的所请求类型的完全限定名称,包含命名空间而不是程序集。
ignoreCase System-Boolean 一个布尔值,指示是否执行区分大小写的搜索。
bindingAttr System-Reflection-BindingFlags 影响 typeName 构造函数搜索的零个或多个位标志的组合。如果 bindingAttr 为零,则对公共构造函数进行区分大小写的搜索。
binder System-Reflection-Binder 一个对象,它启用绑定、对实参类型的强制、对成员的调用,以及通过反射对 MemberInfo 对象的检索。如果 binder 为 null,则使用默认联编程序。
args System-Object[] 要传递给构造函数的实参。此实参数组必须在数量、顺序和类型方面与要调用的构造函数的形参匹配。如果默认的构造函数是首选构造函数,则 args 必须为空数组或 Null。
culture System-Globalization-CultureInfo 区域性特定的信息,这些信息控制将 args 强制转换为 typeName 构造函数所声明的正式类型。如果 culture 为 null,则使用当前线程的 CultureInfo。
activationAttributes System-Object[] 包含一个或多个可以参与激活的特性的数组。通常是包含单个 UrlAttribute 对象的数组。UrlAttribute 指定激活远程对象所需的 URL。
返回值 System.Object 请求的对象,或者如果找不到 typeName 则返回 null。

提示和注释

这是合并 CreateInstanceFrom 和 ObjectHandle.Unwrap 的便捷方法。

activationAttributes 参数与客户端激活对象相关;请参见Client Activation。

有关此方法的更多信息,请参见 Activator.CreateInstanceFrom 方法。

System.AppDomain.CreateInstanceFromAndUnwrap 方法 (String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])例子


异常

异常 异常描述
ArgumentNullException
  • assemblyName 为 null。
  • typeName 为 null。
NotSupportedException 调用方无法为不是从 MarshalByRefObject 继承的对象提供激活特性。
AppDomainUnloadedException 尝试对已卸载的应用程序域进行操作。
FileNotFoundException 未找到 assemblyName。
TypeLoadException 在 assemblyName 中找不到 typeName。
MissingMethodException 找不到匹配的公共构造函数。
MethodAccessException 调用方的权限不足以调用此构造函数。
BadImageFormatException
  • assemblyName 不是有效程序集。
  • assemblyName 使用比当前加载的版本更高的公共语言运行时版本编译的。
FileLoadException 用两个不同的证据将一个程序集或模块加载了两次。

命名空间

namespace: System

程序集: mscorlib(在 mscorlib.dll 中)

版本信息

.NET Framework 受以下版本支持:4 .NET Framework Client Profile 受以下版本支持:4

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。