gpt4 book ai didi

c# - 将 lambda 表达式作为方法参数传递

转载 作者:行者123 更新时间:2023-11-30 19:43:12 28 4
gpt4 key购买 nike

我想创建以下方法,它接受一个 lambda 表达式并按它对数据进行排序。我似乎无法正确设置它。

在什么地方看起来像这样???是 lambda 表达式:

public static MyList<T> PageAndSort<T>(this IEnumerable<T> data, ???)

可以这样使用:

MyList.PageAndSort(List<MyEntity> data, x=>x.ChildEntity.Name)

最佳答案

LINQ 有一个非常相似的方法: OrderBy .看它的签名并模仿它:

public static IOrderedEnumerable<TSource> OrderBy<TSource, TKey>(
this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector
)

适用于您的情况:

public static MyList<TSource> PageAndSort<TSource, TKey>(
this IEnumerable<TSource> data,
Func<TSource, TKey> keySelector
)

Func<T, TResult>是一个委托(delegate),有一个类型为 T 的参数返回 TResult .

关于c# - 将 lambda 表达式作为方法参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15876652/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com