MethodBuilder.Invoke Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Invoca dinámicamente el método reflejado por esta instancia en el objeto dado, pasando los parámetros especificados y considerando las restricciones del enlazador facilitado.
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
Parámetros
- obj
- Object
Objeto donde debe invocarse al método especificado. Si el método es estático, se ignora este parámetro.
- invokeAttr
- BindingFlags
Debe ser un indicador de bits de BindingFlags: InvokeMethod
, NonPublic
, etc.
- binder
- Binder
Objeto que habilita el enlace, la conversión de tipos de argumentos, la invocación de miembros y la recuperación de objetos MemberInfo mediante reflexión. Si el enlazador es null
, se usará el enlazador predeterminado. Para obtener más información, vea Binder.
- parameters
- Object[]
Lista de argumentos. Esta es una matriz de argumentos con el mismo número, orden y tipo que los parámetros del método al que se va a invocar. Si no hay ningún parámetro, deberá ser null
.
- culture
- CultureInfo
Instancia de CultureInfo usada para regir la conversión de tipos. Si es null, se utiliza CultureInfo para el subproceso actual. (Tenga en cuenta que esto es necesario, por ejemplo, para convertir un objeto String que representa 1000 en un valor Double, dado que 1000 se representa de maneras diferentes según la referencia cultural).
Devoluciones
Devuelve un objeto que contiene el valor devuelto del método invocado.
Excepciones
Este método no se admite actualmente. Recupere el método mediante GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) y llame a InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) en el valor devuelto MethodInfo.
Comentarios
Si el método es estático, se omite el obj
parámetro . Para los métodos no estáticos, obj
debe ser una instancia de una clase que hereda o declara el método y debe ser el mismo tipo que esta clase. Si el método no tiene parámetros, el valor de parameters
debe ser null
. De lo contrario, el número, el tipo y el orden de los elementos de la matriz de parámetros deben ser idénticos al número, el tipo y el orden de los parámetros para el método reflejado por esta instancia.
Nota
Las restricciones de acceso se omiten para el código de plena confianza. Es decir, se puede acceder a constructores privados, métodos, campos y propiedades e invocarse mediante Reflection siempre que el código sea de plena confianza.