这个问题已经有了答案:
Func Delegate vs Function
6答
这是一个好奇的问题,为大家所知:
用func代替方法有什么坏处吗?简单示例:

private static Func<int, int, DBContext, List<T>> Foo =
    (i1, i2, dbc) =>
        (i1 != 0) ? dbc.Bar(i2) : new List<T> { /*some default values ...*/ };

VS
private static List<T> Foo(int i1, int i2, DBContext dbc)
{
    return i1 != 0 ? dbc.Bar(i2) : new List<T> { /*some default values ...*/ };
}

最佳答案

我看到了几个缺点:
性能影响(委托与方法)-很小,但确实存在
无参数名称(损害调用的可读性)
定义本身可读性较差
不可能过载(多亏了xanatos)
由于您什么也得不到,所以我只希望在本地和小型上下文中使用静态方法

10-01 23:19