LINQ之前的旧集合查询
本文关键字:集合 查询 LINQ | 更新日期: 2023-09-27 18:21:44
我想介绍一下LINQ,并想介绍一下查询集合过去是如何工作的。回到.Net 1.1中,我似乎记得有一个方法(Find()可能吗?)在那里,您将传递另一个方法的地址,该方法将询问集合中的每个项,并确定它是否应包含在筛选的集合中。
我是不是完全记错了?它一直困扰着我,因为当时的语法很不寻常。
我以为是这样的:
public bool ContainsFoo(string term){
if(term.contains("Foo"){
return true;
}
return false;
}
你可以这样称呼它:
filteredCollection = collection.Find(ContainsFoo);
我似乎记得很多人评论说,LINQ是如何更快地编写代码的,因为开发人员现在可以在线编写函数了。我们以前是如何"离线"编写函数的?
在LINQ之前,您仅限于所有内置的List
/List<T>
方法,是的,Find是其中之一(仍然是)。不同的是,它期望Predicate<T>
,而不是Func<Boolean, T>
,你仍然可以内联,例如
var found = list.Find(delegate(Item item) { return item != null; });
或者使用命名方法进行演示。