ConstructorBuilder.Invoke Метод

Определение

Вызывает конструктор динамически, отраженный этим экземпляром.

Перегрузки

Имя Описание
Invoke(BindingFlags, Binder, Object[], CultureInfo)

Динамически вызывает конструктор, представленный этим экземпляром для данного объекта, передавая указанные параметры, а также при ограничениях данного привязчика.

Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)

Динамически вызывает конструктор, отраженный этим экземпляром с указанными аргументами, в соответствии с ограничениями указанного.Binder

Invoke(BindingFlags, Binder, Object[], CultureInfo)

Исходный код:
ConstructorBuilder.cs

Динамически вызывает конструктор, представленный этим экземпляром для данного объекта, передавая указанные параметры, а также при ограничениях данного привязчика.

public:
 override System::Object ^ Invoke(System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public override object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object?[]? parameters, System.Globalization.CultureInfo? culture);
public override object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Overrides Function Invoke (invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object

Параметры

invokeAttr
BindingFlags

Это должен быть бит флаг из BindingFlags, например InvokeMethod, NonPublic и т. д.

binder
Binder

Объект, который включает привязку, приведение типов аргументов, вызов элементов и получение объектов MemberInfo с помощью отражения. Если привязка имеет значение null, используется привязка по умолчанию. См. Binder.

parameters
Object[]

Список аргументов. Это массив аргументов с тем же числом, порядком и типом, что и параметры вызываемого конструктора. Если нет параметров, это должно быть null.

culture
CultureInfo

Экземпляр, используемый CultureInfo для управления приведением типов. Если это значение null, CultureInfo используется текущий поток. (Например, это необходимо для преобразования String значения, представляющего значение 1000 Double , так как 1000 представлено по-разному различными языками и региональными параметрами.)

Возвращаемое значение

Значение, возвращаемое вызываемым конструктором.

Исключения

Этот метод в настоящее время не поддерживается. Конструктор можно получить с помощью GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) и вызвать Invoke(BindingFlags, Binder, Object[], CultureInfo) возвращенный ConstructorInfoобъект.

Комментарии

Если конструктор не имеет параметров, значение parameters параметра должно быть null. В противном случае число, тип и порядок элементов в parameters массиве должны совпадать с числом, типом и порядком параметров конструктора, отраженным этим экземпляром.

Например, если конструктор, отраженный этим экземпляром, объявляется как открытый класс, принимаюющий две строки, parameters параметр должен быть массивом длиной Object 2.

Note

Ограничения доступа игнорируются для полностью доверенного кода. То есть к частным конструкторам, методам, полям и свойствам можно обращаться и вызывать с помощью отражения всякий раз, когда код полностью доверяется.

См. также раздел

Применяется к

Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)

Исходный код:
ConstructorBuilder.cs

Динамически вызывает конструктор, отраженный этим экземпляром с указанными аргументами, в соответствии с ограничениями указанного.Binder

public:
 override System::Object ^ Invoke(System::Object ^ obj, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public override object Invoke(object? obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object?[]? parameters, System.Globalization.CultureInfo? culture);
public override object Invoke(object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : obj * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Overrides Function Invoke (obj As Object, invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object

Параметры

obj
Object

Объект, который необходимо повторно инициализировать.

invokeAttr
BindingFlags

Одно из BindingFlags значений, указывающее тип требуемой привязки.

binder
Binder

Объект, Binder определяющий набор свойств и обеспечивающий привязку, приведение типов аргументов и вызов элементов с помощью отражения. В противном bindernullслучае используется Binder.DefaultBinding.

parameters
Object[]

Список аргументов. Это массив аргументов с тем же числом, порядком и типом, что и параметры вызываемого конструктора. Если нет параметров, это должна быть пустая ссылка (Nothing в Visual Basic).

culture
CultureInfo

Используется CultureInfo для управления приведением типов. Если это значение null, CultureInfo используется текущий поток.

Возвращаемое значение

Экземпляр класса, связанного с конструктором.

Исключения

Этот метод в настоящее время не поддерживается. Конструктор можно получить с помощью GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) и вызвать Invoke(BindingFlags, Binder, Object[], CultureInfo) возвращенный ConstructorInfoобъект.

Комментарии

Число, тип и порядок элементов в массиве параметров должно совпадать с числом, типом и порядком параметров конструктора, отраженным этим экземпляром.

Перед вызовом конструктора убедитесь, Invoke что вызывающий объект имеет разрешение на доступ и что параметры имеют правильный номер, порядок и тип.

Ограничения доступа игнорируются для полностью доверенного кода. То есть к частным конструкторам, методам, полям и свойствам можно обращаться и вызывать с помощью отражения всякий раз, когда код полностью доверяется.

См. также раздел

Применяется к