DynamicObject.TryCreateInstance Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia implementację operacji, które inicjują nowe wystąpienie obiektu dynamicznego. Ta metoda nie jest przeznaczona do użycia w języku C# lub 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
Parametry
- binder
- CreateInstanceBinder
Zawiera informacje o operacji inicjowania.
- args
- Object[]
Argumenty przekazywane do obiektu podczas inicjowania. Na przykład dla new SampleType(100)
operacji, gdzie SampleType
jest typem pochodzącym z DynamicObject klasy, args[0]
jest równe 100.
- result
- Object
Wynik inicjowania.
Zwraca
true
jeśli operacja zakończy się pomyślnie; w przeciwnym razie , false
. Jeśli ta metoda zwróci false
wartość , powiązanie czasu wykonywania języka określa zachowanie. (W większości przypadków zgłaszany jest wyjątek czasu wykonywania specyficzny dla języka).
Uwagi
Klasy pochodzące z DynamicObject klasy mogą zastąpić tę metodę, aby określić sposób inicjowania nowego wystąpienia obiektu dynamicznego. Gdy metoda nie jest zastępowana, powiązanie czasu wykonywania języka określa zachowanie. (W większości przypadków zgłaszany jest wyjątek czasu wykonywania specyficzny dla języka).
Kompilatory języka C# i Visual Basic nigdy nie emitują kodu do użycia tej metody, ponieważ nie obsługują typów pierwszej klasy. Ta metoda jest przeznaczona dla języków, które obsługują inicjowanie obiektów dynamicznych przy użyciu składni, takiej jak dynamic new
.