Condividi tramite


MethodBuilder.Invoke Metodo

Definizione

Richiama dinamicamente il metodo ottenuto mediante reflection da questa istanza sull'oggetto indicato, passando i parametri specificati e con i vincoli del binder indicato.

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

Parametri

obj
Object

Oggetto su cui richiamare il metodo specificato. Se il metodo è statico, questo parametro verrà ignorato.

invokeAttr
BindingFlags

Deve essere un flag di bit di BindingFlags: InvokeMethod, NonPublic e così via.

binder
Binder

Oggetto che consente l'associazione, la coercizione dei tipi, la chiamata dei membri e il recupero di oggetti MemberInfo tramite reflection. Se il binder è null, viene usato quello predefinito. Per altri dettagli, vedere Binder.

parameters
Object[]

Elenco di argomenti. Matrice di argomenti con lo stesso numero, ordine e tipo dei parametri del metodo da richiamare. In assenza di parametri, deve essere null.

culture
CultureInfo

Istanza di CultureInfo usata per regolare la coercizione dei tipi. Se tale parametro è Null, verrà usato l'oggetto CultureInfo per il thread corrente. Questo è necessario, ad esempio, per convertire un oggetto String che rappresenta 1000 in un valore Double, perché 1000 è rappresentato in modo diverso nelle diverse impostazioni cultura.

Restituisce

Restituisce un oggetto che contiene il valore restituito del metodo richiamato.

Eccezioni

Commenti

Se il metodo è statico, il obj parametro viene ignorato. Per i metodi non statici, obj deve essere un'istanza di una classe che eredita o dichiara il metodo e deve essere lo stesso tipo di questa classe. Se il metodo non ha parametri, il valore di parameters deve essere null. In caso contrario, il numero, il tipo e l'ordine degli elementi nella matrice di parametri devono essere identici al numero, al tipo e all'ordine dei parametri per il metodo riflessa da questa istanza.

Nota

Le restrizioni di accesso vengono ignorate per il codice completamente attendibile. Vale a dire, è possibile accedere a costruttori privati, metodi, campi e proprietà e richiamare usando Reflection ogni volta che il codice è completamente attendibile.

Si applica a