ant*_*ioh 5 c# lambda dictionary
为什么这会编译:
public Dictionary<ValueLineType,
Func<HtmlHelper,
string,
object,
Type,
string>> constructor =
new Dictionary<ValueLineType,
Func<HtmlHelper,
string,
object,
Type,
string>>();
Run Code Online (Sandbox Code Playgroud)
但是在Func(布尔值)中有一个额外参数的另一个没有:
public Dictionary<ValueLineType,
Func<HtmlHelper,
string,
object,
Type,
bool,
string>> constructor =
new Dictionary<ValueLineType,
Func<HtmlHelper,
string,
object,
Type,
bool,
string>>();
Run Code Online (Sandbox Code Playgroud)
要么我失明了,要么我今天要学习别的东西:D
Jon*_*eet 18
没有这样的事情Func<T1,T2,T3,T4,T5,TResult>.它只能达到4个参数(即5个类型参数,包括一个返回值):
Func<T>
Func<T1, TResult>
Func<T1, T2, TResult>
Func<T1, T2, T3, TResult>
Func<T1, T2, T3, T4, TResult>
SpinalTap<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult>
Run Code Online (Sandbox Code Playgroud)
当然,您可以申报自己的:
public delegate TResult Func<T1, T2, T3, T4, T5, TResult>
(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5);
Run Code Online (Sandbox Code Playgroud)
但是,在那一点上,我会非常仔细地考虑您是否可以将这些参数封装在一起.他们完全不相关吗?
| 归档时间: |
|
| 查看次数: |
703 次 |
| 最近记录: |