Udostępnij za pośrednictwem


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

Definicja

Hermetyzuje metodę, która ma siedem parametrów i zwraca wartość typu określonego TResult przez parametr .

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

Parametry typu

T1

Typ pierwszego parametru metody, który ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
T2

Typ drugiego parametru metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
T3

Typ trzeciego parametru metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
T4

Typ czwartego parametru metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
T5

Typ piątego parametru metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
T6

Typ szóstego parametru metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
T7

Typ siódmego parametru metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
TResult

Typ zwracanej wartości metody, którą ten delegat hermetyzuje.

Ten parametr typu jest kowariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest bardziej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.

Parametry

arg1
T1

Pierwszy parametr metody, którą ten delegat hermetyzuje.

arg2
T2

Drugi parametr metody, którą ten delegat hermetyzuje.

arg3
T3

Trzeci parametr metody, którą ten delegat hermetyzuje.

arg4
T4

Czwarty parametr metody, którą hermetyzuje ten delegat.

arg5
T5

Piąty parametr metody, którą hermetyzuje ten delegat.

arg6
T6

Szósty parametr metody, którą hermetyzuje ten delegat.

arg7
T7

Siódmy parametr metody, którą ten delegat hermetyzuje.

Wartość zwracana

TResult

Zwracana wartość metody, którą ten delegat hermetyzuje.

Uwagi

Tego delegata można użyć do reprezentowania metody, która może być przekazywana jako parametr bez jawnego deklarowania delegata niestandardowego. Metoda hermetyzowana musi odpowiadać sygnaturze metody zdefiniowanej przez ten delegat. Oznacza to, że metoda hermetyzowana musi mieć siedem parametrów, z których każda jest przekazywana przez wartość, i że musi zwrócić wartość.

Uwaga

Aby odwołać się do metody, która ma siedem parametrów i zwraca void (lub w Visual Basic, jest zadeklarowana jako a nie jako ), Sub Functionzamiast tego należy użyć delegata ogólnegoAction<T1,T2,T3,T4,T5,T6,T7>.

Możesz również użyć delegata Func<T1,T2,T3,T4,T5,T6,T7,TResult> z metodami anonimowymi i wyrażeniami lambda.

Podstawowym typem wyrażenia lambda jest jeden z delegatów ogólnych Func . Dzięki temu można przekazać wyrażenie lambda jako parametr bez jawnego przypisania go do delegata.

Metody rozszerzania

GetMethodInfo(Delegate)

Pobiera obiekt reprezentujący metodę reprezentowaną przez określonego delegata.

Dotyczy

Zobacz też