Func<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,TResult> Delegate

Definition

封装一个方法,该方法具有 16 个参数,并返回 TResult 参数所指定的类型的值。Encapsulates a method that has 16 parameters and returns a value of the type specified by the TResult parameter.

generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, typename T15, typename T16, typename TResult>
public delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15, T16 arg16);
public delegate TResult Func<in T1,in T2,in T3,in T4,in T5,in T6,in T7,in T8,in T9,in T10,in T11,in T12,in T13,in T14,in T15,in T16,out TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15, T16 arg16);
type Func<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'T8, 'T9, 'T10, 'T11, 'T12, 'T13, 'T14, 'T15, 'T16, 'Result> = delegate of 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'T8 * 'T9 * 'T10 * 'T11 * 'T12 * 'T13 * 'T14 * 'T15 * 'T16 -> 'Result
Public Delegate Function Func(Of In T1, In T2, In T3, In T4, In T5, In T6, In T7, In T8, In T9, In T10, In T11, In T12, In T13, In T14, In T15, In T16, 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, arg9 As T9, arg10 As T10, arg11 As T11, arg12 As T12, arg13 As T13, arg14 As T14, arg15 As T15, arg16 As T16) As TResult 

Type Parameters

T1

此委托封装的方法的第一个参数的类型。The type of the first parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T2

此委托封装的方法的第二个参数的类型。The type of the second parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T3

此委托封装的方法的第三个参数的类型。The type of the third parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T4

此委托封装的方法的第四个参数的类型。The type of the fourth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T5

此委托封装的方法的第五个参数的类型。The type of the fifth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T6

此委托封装的方法的第六个参数的类型。The type of the sixth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T7

此委托封装的方法的第七个参数的类型。The type of the seventh parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T8

此委托封装的方法的第八个参数的类型。The type of the eighth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T9

此委托封装的方法的第九个参数的类型。The type of the ninth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T10

此委托封装的方法的第十个参数的类型。The type of the tenth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T11

此委托封装的方法的第十一个参数的类型。The type of the eleventh parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T12

此委托封装的方法的第十二个参数的类型。The type of the twelfth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T13

此委托封装的方法的第十三个参数的类型。The type of the thirteenth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T14

此委托封装的方法的第十四个参数的类型。The type of the fourteenth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T15

此委托封装的方法的第十五个参数的类型。The type of the fifteenth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
T16

此委托封装的方法的第十六个参数的类型。The type of the sixteenth parameter of the method that this delegate encapsulates.

This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
TResult

此委托封装的方法的返回值类型。The type of the return value of the method that this delegate encapsulates.

This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.

Parameters

arg1
T1

此委托封装的方法的第一个参数。The first parameter of the method that this delegate encapsulates.

arg2
T2

此委托封装的方法的第二个参数。The second parameter of the method that this delegate encapsulates.

arg3
T3

此委托封装的方法的第三个参数。The third parameter of the method that this delegate encapsulates.

arg4
T4

此委托封装的方法的第四个参数。The fourth parameter of the method that this delegate encapsulates.

arg5
T5

此委托封装的方法的第五个参数。The fifth parameter of the method that this delegate encapsulates.

arg6
T6

此委托封装的方法的第六个参数。The sixth parameter of the method that this delegate encapsulates.

arg7
T7

此委托封装的方法的第七个参数。The seventh parameter of the method that this delegate encapsulates.

arg8
T8

此委托封装的方法的第八个参数。The eighth parameter of the method that this delegate encapsulates.

arg9
T9

此委托封装的方法的第九个参数。The ninth parameter of the method that this delegate encapsulates.

arg10
T10

此委托封装的方法的第十个参数。The tenth parameter of the method that this delegate encapsulates.

arg11
T11

此委托封装的方法的第十一个参数。The eleventh parameter of the method that this delegate encapsulates.

arg12
T12

此委托封装的方法的第十二个参数。The twelfth parameter of the method that this delegate encapsulates.

arg13
T13

此委托封装的方法的第十三个参数。The thirteenth parameter of the method that this delegate encapsulates.

arg14
T14

此委托封装的方法的第十四个参数。The fourteenth parameter of the method that this delegate encapsulates.

arg15
T15

此委托封装的方法的第十五个参数。The fifteenth parameter of the method that this delegate encapsulates.

arg16
T16

此委托封装的方法的第十六个参数。The sixteenth parameter of the method that this delegate encapsulates.

Return Value

TResult

此委托封装的方法的返回值。The return value of the method that this delegate encapsulates.

Inheritance
Func<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,TResult>

Remarks

您可以使用此委托来表示一个方法,该方法可作为参数传递,而无需显式声明自定义委托。You can use this delegate to represent a method that can be passed as a parameter without explicitly declaring a custom delegate. 封装的方法必须对应于由此委托定义的方法签名。The encapsulated method must correspond to the method signature that is defined by this delegate. 这意味着,封装的方法必须具有16个参数,每个参数都按值传递到该方法,并且必须返回一个值。This means that the encapsulated method must have 16 parameters, each of which is passed to it by value, and that it must return a value.

Note

若要引用包含16个参数并返回 void (或在 Visual Basic 中声明为 Sub 而不是作为 Function)的方法,请改用泛型 Action<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16> 委托。To reference a method that has 16 parameters and returns void (or in Visual Basic, that is declared as a Sub rather than as a Function), use the generic Action<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16> delegate instead.

还可以将 Func<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,TResult> 委托与匿名方法和 lambda 表达式一起使用。You can also use the Func<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,TResult> delegate with anonymous methods and lambda expressions.

Lambda 表达式的基础类型是泛型 Func 委托之一。The underlying type of a lambda expression is one of the generic Func delegates. 这样,便可以将 lambda 表达式作为参数传递,而无需将其显式分配给委托。This makes it possible to pass a lambda expression as a parameter without explicitly assigning it to a delegate.

Extension Methods

GetMethodInfo(Delegate)

获取指示指定委托表示的方法的对象。Gets an object that represents the method represented by the specified delegate.

Applies to

See also