ConstructorBuilder.Invoke Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Richiama il costruttore in modo dinamico riflesso da questa istanza.
Overload
| Nome | Descrizione |
|---|---|
| Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Richiama in modo dinamico il costruttore riflesso da questa istanza con gli argomenti specificati, in base ai vincoli dell'oggetto specificato |
| Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Richiama dinamicamente il costruttore rappresentato da questa istanza sull'oggetto specificato, passando i parametri specificati e sotto i vincoli del binder specificato. |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
Richiama in modo dinamico il costruttore riflesso da questa istanza con gli argomenti specificati, in base ai vincoli dell'oggetto specificato 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);
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 che deve essere reinizializzato.
- invokeAttr
- BindingFlags
Uno dei BindingFlags valori che specifica il tipo di associazione desiderato.
- binder
- Binder
Oggetto Binder che definisce un set di proprietà e abilita l'associazione, la coercizione dei tipi di argomento e la chiamata dei membri tramite reflection. Se binder è null, viene usato Binder.DefaultBinding.
- parameters
- Object[]
Elenco di argomenti. Si tratta di una matrice di argomenti con lo stesso numero, ordine e tipo dei parametri del costruttore da richiamare. Se non sono presenti parametri, deve essere un riferimento Null (Nothing in Visual Basic).
- culture
- CultureInfo
Oggetto CultureInfo utilizzato per gestire la coercizione dei tipi. Se è Null, viene usato per CultureInfo il thread corrente.
Valori restituiti
Istanza della classe associata al costruttore.
Eccezioni
Questo metodo non è attualmente supportato. È possibile recuperare il costruttore usando GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) e chiamare Invoke(BindingFlags, Binder, Object[], CultureInfo) sull'oggetto restituito ConstructorInfo.
Commenti
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 costruttore riflessa da questa istanza.
Prima di chiamare il costruttore, Invoke assicura che il chiamante disponga dell'autorizzazione di accesso e che i parametri siano del numero, dell'ordine e del tipo corretti.
Le restrizioni di accesso vengono ignorate per il codice completamente attendibile. Ovvero, i costruttori privati, i metodi, i campi e le proprietà possono essere accessibili e richiamati tramite Reflection ogni volta che il codice è completamente attendibile.
Vedi anche
Si applica a
Invoke(BindingFlags, Binder, Object[], CultureInfo)
Richiama dinamicamente il costruttore rappresentato da questa istanza sull'oggetto specificato, passando i parametri specificati e sotto i vincoli del binder specificato.
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);
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
Parametri
- invokeAttr
- BindingFlags
Deve essere un flag di bit da BindingFlags, ad esempio InvokeMethod, NonPublic e così via.
- binder
- Binder
Oggetto che consente l'associazione, la coercizione dei tipi di argomento, la chiamata dei membri e il recupero di MemberInfo oggetti tramite reflection. Se binder è null, viene usato il binder predefinito. Vedete Binder.
- parameters
- Object[]
Elenco di argomenti. Si tratta di una matrice di argomenti con lo stesso numero, ordine e tipo dei parametri del costruttore da richiamare. Se non sono presenti parametri, deve essere null.
- culture
- CultureInfo
Istanza di CultureInfo utilizzata per gestire la coercizione dei tipi. Se è Null, viene usato per CultureInfo il thread corrente. Ad esempio, questa operazione è necessaria per convertire un String oggetto che rappresenta 1000 in un Double valore, poiché 1000 è rappresentato in modo diverso da impostazioni cultura diverse.
Valori restituiti
Valore restituito dal costruttore richiamato.
Eccezioni
Questo metodo non è attualmente supportato. È possibile recuperare il costruttore usando GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) e chiamare Invoke(BindingFlags, Binder, Object[], CultureInfo) sull'oggetto restituito ConstructorInfo.
Commenti
Se il costruttore non ha parametri, il valore del parameters parametro deve essere null. In caso contrario, il numero, il tipo e l'ordine degli elementi nella parameters matrice devono essere identici al numero, al tipo e all'ordine dei parametri per il costruttore riflessa da questa istanza.
Ad esempio, se il costruttore riflesso da questa istanza viene dichiarato come classe pubblica che accetta due stringhe, il parameters parametro deve essere una matrice di Object con lunghezza 2.
Note
Le restrizioni di accesso vengono ignorate per il codice completamente attendibile. Ovvero, i costruttori privati, i metodi, i campi e le proprietà possono essere accessibili e richiamati tramite Reflection ogni volta che il codice è completamente attendibile.