Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Delegate.CreateDelegate (Type, Type, String, Boolean)

 

Data di pubblicazione: ottobre 2016

Crea un delegato del tipo indicato che rappresenta il metodo statico specificato della classe indicata, con la distinzione tra maiuscole e minuscole specificata.

Spazio dei nomi:   System
Assembly:  mscorlib (in mscorlib.dll)

public static Delegate CreateDelegate(
	Type type,
	Type target,
	string method,
	bool ignoreCase
)

Parametri

type
Type: System.Type

Type del delegato da creare.

target
Type: System.Type

Type che rappresenta la classe che implementa method.

method
Type: System.String

Nome del metodo statico che deve essere rappresentato dal delegato.

ignoreCase
Type: System.Boolean

Valore booleano che indica se ignorare o meno la distinzione tra maiuscole e minuscole al momento di confrontare il nome del metodo.

Valore restituito

Type: System.Delegate

Delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata.

Exception Condition
ArgumentNullException

type è null.

-oppure-

target è null.

-oppure-

method è null.

ArgumentException

type non eredita MulticastDelegate.

-oppure-

type non è un oggetto RuntimeType. Vedere tipi di Runtime nella Reflection.

-oppure-

target non è un oggetto RuntimeType.

-oppure-

target è un tipo generico aperto. Ciò significa che la proprietà ContainsGenericParameters è true.

-oppure-

method non è un metodo static (metodo Shared in Visual Basic).

-oppure-

Non possibile associare method, ad esempio perché non è stato trovato.

MissingMethodException

Non è possibile trovare il metodo Invoke di type.

MethodAccessException

Il chiamante non ha le autorizzazioni necessarie per accedere a method.

Questo metodo crea delegati solo per metodi statici. Un metodo di istanza è un metodo che è associato a un'istanza di una classe. un metodo statico è un metodo che viene associato alla classe stessa.

Questo overload del metodo è equivalente alla chiamata di CreateDelegate(Type, Type, String, Boolean, Boolean) overload del metodo, specificando true per throwOnBindFailure.

System_CAPS_noteNota

A partire dal .NET Framework 2.0 Service Pack 1, questo metodo può essere utilizzato per accedere ai metodi non pubblici, se il chiamante è stato concesso ReflectionPermission con il ReflectionPermissionFlag.RestrictedMemberAccess flag e se il set di concessioni dei metodi non pubblici è limitato al chiamante set o un sottoinsieme. Per informazioni, vedere Security Considerations for Reflection.

Per usare questa funzionalità, l'applicazione deve essere destinata a .NET Framework 3.5 o versione successiva.

ReflectionPermission

for accessing a non-public method when the grant set of the non-public method is restricted to the caller's grant set, or a subset thereof. Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.RestrictedMemberAccess

ReflectionPermission

for accessing a non-public method regardless of its grant set. Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.MemberAccess

ReflectionPermission

when invoked late-bound through mechanisms such as M:System.Type.InvokeMember(System.String,System.Reflection.BindingFlags,System.Reflection.Binder,System.Object,System.Object[],System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[]). Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.MemberAccess.

.NET Framework
Disponibile da 2.0
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Torna all'inizio
Mostra: