【发布时间】:2011-02-23 08:43:45
【问题描述】:
我想实现一个方法,它接受两个 Action A1 和 Action A2 委托并返回新委托,它将它们结合起来。他方法的签名如下:
public static Action<Tuple<T1,T2>> CombineWith<T1,T2>(this Action<T1> a1, Action<T2> a2)
所以,不要说
{
A1(t1);
A2(t2);
}
我希望能够写作:
{
A1.CombineWith(A2)(Tuple.Create(t1,t2));
}
这个方法的可能实现是什么?
【问题讨论】:
-
返回一个以元组作为参数的动作是否至关重要?还是返回一个单独接受每个参数的操作也可以?
-
实际上,单独接受参数会更可取。
标签: c# .net generics delegates functional-programming