Comparteix a través de


TypeBuilder.InvokeMember Método

Definición

Invoca el miembro especificado. El método que se va a invocar debe ser accesible y proporcionar la coincidencia más específica con la lista de argumentos dada, bajo las restricciones del enlazador y los atributos de invocación indicados.

public:
 override System::Object ^ InvokeMember(System::String ^ name, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, System::Object ^ target, cli::array <System::Object ^> ^ args, cli::array <System::Reflection::ParameterModifier> ^ modifiers, System::Globalization::CultureInfo ^ culture, cli::array <System::String ^> ^ namedParameters);
public override object? InvokeMember (string name, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object? target, object?[]? args, System.Reflection.ParameterModifier[]? modifiers, System.Globalization.CultureInfo? culture, string[]? namedParameters);
public override object InvokeMember (string name, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object target, object[] args, System.Reflection.ParameterModifier[] modifiers, System.Globalization.CultureInfo culture, string[] namedParameters);
override this.InvokeMember : string * System.Reflection.BindingFlags * System.Reflection.Binder * obj * obj[] * System.Reflection.ParameterModifier[] * System.Globalization.CultureInfo * string[] -> obj
Public Overrides Function InvokeMember (name As String, invokeAttr As BindingFlags, binder As Binder, target As Object, args As Object(), modifiers As ParameterModifier(), culture As CultureInfo, namedParameters As String()) As Object

Parámetros

name
String

Nombre del miembro que se va a invocar. Puede ser un constructor, un método, una propiedad o un campo. Debe especificarse un atributo de invocación apropiado. Tenga en cuenta que es posible invocar al miembro predeterminado de una clase pasando una cadena vacía como el nombre del miembro.

invokeAttr
BindingFlags

Atributo de invocación. Debe ser un indicador de bits de BindingFlags.

binder
Binder

Objeto que permite el enlace, la conversión de tipos de argumentos, la invocación de miembros y la recuperación de objetos MemberInfo mediante la reflexión. Si el enlazador es null, se usará el enlazador predeterminado. Vea Binder.

target
Object

Objeto donde debe invocarse al miembro especificado. Si el miembro es estático, se ignora este parámetro.

args
Object[]

Lista de argumentos. Se trata de una matriz de objetos que contiene el número, orden y tipo de los parámetros del miembro que se va a invocar. Si no hay ningún parámetro, este valor debe ser null.

modifiers
ParameterModifier[]

Matriz de la misma longitud que args con elementos que representan los atributos asociados a los argumentos del miembro que se va a invocar. Un parámetro tiene atributos asociados a él en los metadatos. Los usan varios servicios de interoperabilidad. Consulte las especificaciones de metadatos para obtener más detalles.

culture
CultureInfo

Instancia de CultureInfo usada para regir la conversión de tipos. Si es null, se utiliza CultureInfo para el subproceso actual. (Por ejemplo, esto es necesario para convertir un tipo String que representa 1000 en un valor Double, dado que 1000 se representa de manera diferente según la referencia cultural).

namedParameters
String[]

Cada parámetro de la matriz namedParameters obtiene el valor del elemento correspondiente en la matriz args. Si la longitud de args es mayor que la longitud de namedParameters, los valores de argumento restantes se pasan por orden.

Devoluciones

Devuelve el valor devuelto del miembro invocado.

Excepciones

Este método no se admite actualmente para tipos incompletos.

Comentarios

Se invocará un método si el número de parámetros de la declaración del método es igual al número de argumentos de la lista de argumentos especificada, y el enlazador puede convertir el tipo de cada argumento en el tipo del parámetro.

El enlazador encontrará todos los métodos coincidentes. Estos métodos se encuentran en función del tipo de enlace solicitado (BindingFlags.InvokeMethod, BindingFlags.GetProperties, etc.). El conjunto de métodos se filtra por el nombre, el número de argumentos y un conjunto de modificadores de búsqueda definidos en el enlazador. Una vez seleccionado el método, se invocará. La accesibilidad se comprueba en ese momento. La búsqueda puede controlar qué conjunto de métodos se buscan en función del atributo de accesibilidad asociado al método . El IBinder.BindToMethod método es responsable de seleccionar el método que se va a invocar. El enlazador predeterminado selecciona la coincidencia más específica.

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.

Este método no se admite actualmente. Puede recuperar el tipo mediante Type.GetType o Assembly.GetType y usar la reflexión en el tipo recuperado.

Se aplica a