Condividi tramite


Func<T1,T2,T3,T4,T5,T6,T7,T8,TResult> Delegato

Definizione

Incapsula un metodo che dispone di otto parametri e restituisce un valore del tipo specificato dal parametro TResult.

generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename TResult>
public delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8);
public delegate TResult Func<in T1,in T2,in T3,in T4,in T5,in T6,in T7,in T8,out TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8);
type Func<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'T8, 'Result> = delegate of 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 -> 'Result
Public Delegate Function Func(Of In T1, In T2, In T3, In T4, In T5, In T6, In T7, In T8, Out TResult)(arg1 As T1, arg2 As T2, arg3 As T3, arg4 As T4, arg5 As T5, arg6 As T6, arg7 As T7, arg8 As T8) As TResult 

Parametri di tipo

T1

Tipo del primo parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T2

Tipo del secondo parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T3

Tipo del terzo parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T4

Tipo del quarto parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T5

Tipo del quinto parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T6

Tipo del sesto parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T7

Tipo del settimo parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
T8

Tipo dell'ottavo parametro del metodo incapsulato da questo delegato.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
TResult

Tipo del valore restituito del metodo incapsulato da questo delegato.

Questo parametro di tipo è covariante, ovvero puoi usare il tipo specificato o qualsiasi tipo più derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.

Parametri

arg1
T1

Primo parametro del metodo incapsulato da questo delegato.

arg2
T2

Secondo parametro del metodo incapsulato da questo delegato.

arg3
T3

Terzo parametro del metodo incapsulato da questo delegato.

arg4
T4

Quarto parametro del metodo incapsulato da questo delegato.

arg5
T5

Quinto parametro del metodo incapsulato da questo delegato.

arg6
T6

Sesto parametro del metodo incapsulato da questo delegato.

arg7
T7

Settimo parametro del metodo incapsulato da questo delegato.

arg8
T8

Ottavo parametro del metodo incapsulato da questo delegato.

Valore restituito

TResult

Valore restituito del metodo incapsulato da questo delegato.

Commenti

È possibile usare questo delegato per rappresentare un metodo che può essere passato come parametro senza dichiarare esplicitamente un delegato personalizzato. Il metodo incapsulato deve corrispondere alla firma del metodo definita da questo delegato. Ciò significa che il metodo incapsulato deve avere otto parametri, ognuno dei quali viene passato per valore e che deve restituire un valore.

Nota

Per fare riferimento a un metodo con otto parametri e restituisce void (o in Visual Basic, dichiarato come anziché Sub come ), Functionusare invece il delegato generico Action<T1,T2,T3,T4,T5,T6,T7,T8> .

È anche possibile usare il Func<T1,T2,T3,T4,T5,T6,T7,T8,TResult> delegato con metodi anonimi ed espressioni lambda.

Il tipo sottostante di un'espressione lambda è uno dei delegati generici Func . In questo modo è possibile passare un'espressione lambda come parametro senza assegnarla in modo esplicito a un delegato.

Metodi di estensione

GetMethodInfo(Delegate)

Ottiene un oggetto che rappresenta il metodo rappresentato dal delegato specificato.

Si applica a

Vedi anche