我发现自己经常编写带有常见参数或返回类型的委托。因此,我经常发现自己使用这样的代表:
public delegate void CommonVoidEmptyDelegate();
public delegate void CommonVoidDelegate<TParam>(TParam p);
public delegate void CommonVoidParamDelegate<TParam>(params TParam[] p);
public delegate TReturn CommonEmptyDelegate<TReturn, TParam>(TParam p);
public delegate TReturn CommonParamDelegate<TReturn, TParam>(params TParam[] p);
而不是我在每个项目中定义这些,我想知道框架中是否有一些我可以使用的东西。
答案 0 :(得分:7)
您可能正在寻找代理人的Action
和Func
家庭。
答案 1 :(得分:3)
将评论转换为答案:
只需使用Func
和Action
代表。它们提供了很大的灵活性。
答案 2 :(得分:3)
前两个可以使用Action
,Action<T>
,第三个可以使用Func<T, TResult>
。
第3和第5位代表没有标准代表。