DynamicObject.TryCreateInstance Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides the implementation for operations that initialize a new instance of a dynamic object. This method is not intended for use in C# or 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
Parameters
- binder
- CreateInstanceBinder
Provides information about the initialization operation.
- args
- Object[]
The arguments that are passed to the object during initialization. For example, for the new SampleType(100)
operation, where SampleType
is the type derived from the DynamicObject class, args[0]
is equal to 100.
- result
- Object
The result of the initialization.
Returns
true
if the operation is successful; otherwise, false
. If this method returns false
, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
Remarks
Classes derived from the DynamicObject class can override this method to specify how a new instance of the dynamic object should be initialized. When the method is not overridden, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
C# and Visual Basic compilers never emit code to use this method because they do not support first-class types. This method is intended for languages that support the initialization of dynamic objects by using syntax like dynamic new
.