C#:泛型函数,根据条件从集合中返回元素

时间:2018-10-08 15:59:47

标签: c# collections func

所以我有这个function基于collectioncondition返回元素

public static T Search<T>(IEnumerable<T> source, Func<T, bool> filter)
{
    return source.FirstOrDefault(filter);
}

我想将其转换为以elements形式返回我的collection的所有condition

所以不要将函数签名更改为public static IEnumerable<T> Search<T>(IEnumerable<T> source, Func<T, bool> filter)

我需要在函数内部进行哪些更改?

2 个答案:

答案 0 :(得分:5)

使用Where代替FirstOrDefault

public static IEnumerable<T> Search<T>(IEnumerable<T> source, Func<T, bool> filter)
{
    return source.Where(filter);
}

答案 1 :(得分:1)

使用Where方法代替FirstOrDefault