DynamicObject.TryCreateInstance Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет реализацию операций, инициализающих новый экземпляр динамического объекта. Этот метод не предназначен для использования в 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.