让我们有一个功能:
Func<argsFoo, resultFoo> foo= x=>new resultFoo(x);
Func<argsBar, resultBar> bar= x=>new resultBar(x);
Func<argsBaz, resultBaz> baz= x=>new resultBaz(x);
我想创建一个使用上面声明的所有这些函数的复杂函数。
像这样:
Func
<
Func<argsFoo, resultFoo>,
Func<argsBar, resultBar>,
Func<argsBaz,resultBaz>,
fooBarBazResult
> fooBarBaz=...
关键是这样的声明正在扼杀程序的可读性。在这种情况下,类型推断不起作用。
问题:我可以使用这样的东西吗?
FooBarBaz<typeof(foo),typeof(bar)>,typeof(baz)>>
我试过了,答案是否定的。可能有人有另一种解决方案来缩短组合函数声明吗?