DynamicObject.TryCreateInstance 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为初始化动态对象的新实例的操作提供实现。 不应将此方法用于 C# 或 Visual Basic。
public:
virtual bool TryCreateInstance(System::Dynamic::CreateInstanceBinder ^ binder, cli::array <System::Object ^> ^ args, [Runtime::InteropServices::Out] System::Object ^ % result);
public virtual bool TryCreateInstance (System.Dynamic.CreateInstanceBinder binder, object[] args, out object result);
public virtual bool TryCreateInstance (System.Dynamic.CreateInstanceBinder binder, object?[]? args, out object? result);
abstract member TryCreateInstance : System.Dynamic.CreateInstanceBinder * obj[] * obj -> bool
override this.TryCreateInstance : System.Dynamic.CreateInstanceBinder * obj[] * obj -> bool
Public Overridable Function TryCreateInstance (binder As CreateInstanceBinder, args As Object(), ByRef result As Object) As Boolean
参数
- binder
- CreateInstanceBinder
提供有关初始化操作的信息。
- args
- Object[]
初始化期间传递给对象的参数。 例如,对于 new SampleType(100)
操作,其中 SampleType
是派生自 类的类型 DynamicObject , args[0]
等于 100。
- result
- Object
初始化的结果。
返回
如果操作成功,则为 true
;否则为 false
。 如果此方法返回 false
,则该语言的运行时联编程序将决定行为。 (大多数情况下,将引发语言特定的运行时异常。)
注解
派生自 类的 DynamicObject 类可以重写此方法,以指定应如何初始化动态对象的新实例。 当方法未重写时,语言的运行时联编程序将确定行为。 (大多数情况下,将引发语言特定的运行时异常。)
C# 和 Visual Basic 编译器从不发出使用此方法的代码,因为它们不支持第一类类型。 此方法适用于支持使用 等 dynamic new
语法初始化动态对象的语言。