Поделиться через


MethodBuilder.Invoke Метод

Определение

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

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: InvokeMethod, NonPublic и так далее.

binder
Binder

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

parameters
Object[]

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

culture
CultureInfo

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

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

Возвращает объект, содержащий возвращаемое значение вызываемого элемента.

Исключения

В настоящее время этот метод не поддерживается. Извлеките метод с помощью GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) и вызовите InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) в возвращенном методе MethodInfo.

Комментарии

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

Примечание

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

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