Freigeben über


DynamicObject.TryCreateInstance Methode

Definition

Stellt die Implementierung für Vorgänge bereit, die eine neue Instanz eines dynamischen Objekts initialisieren. Diese Methode ist nicht zur Verwendung in C# oder Visual Basic vorgesehen.

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

Parameter

binder
CreateInstanceBinder

Stellt Informationen zum Initialisierungsvorgang bereit.

args
Object[]

Die Argumente, die während der Initialisierung an das Objekt übergeben werden. Für den new SampleType(100) Vorgang, bei dem SampleType der von der DynamicObject -Klasse abgeleitete Typ ist, args[0] ist beispielsweise gleich 100.

result
Object

Das Ergebnis der Initialisierung.

Gibt zurück

true, wenn der Vorgang erfolgreich ist, andernfalls false. Wenn die Methode false zurückgibt, wird das Verhalten vom Laufzeitbinder der Sprache bestimmt. (In den meisten Fällen wird eine sprachspezifische Laufzeitausnahme ausgelöst.)

Hinweise

Von der DynamicObject -Klasse abgeleitete Klassen können diese Methode überschreiben, um anzugeben, wie eine neue instance des dynamischen Objekts initialisiert werden soll. Wenn die Methode nicht überschrieben wird, bestimmt der Laufzeitbinder der Sprache das Verhalten. (In den meisten Fällen wird eine sprachspezifische Laufzeitausnahme ausgelöst.)

C#- und Visual Basic-Compiler geben nie Code aus, um diese Methode zu verwenden, da sie keine erstklassigen Typen unterstützen. Diese Methode ist für Sprachen vorgesehen, die die Initialisierung dynamischer Objekte mithilfe von Syntax wie dynamic newunterstützen.

Gilt für: