LINQ中的標(biāo)準(zhǔn)查詢運算符實際上是 IEnumerable<T> and IQueryable<T>類型的擴(kuò)展方法。它們在System.Linq.Enumerable和System.Linq.Queryable類中定義。LINQ中提供了50多個標(biāo)準(zhǔn)查詢運算符,它們提供了不同的功能,例如過濾,排序,分組,聚合,串聯(lián)等。
查詢語法中的標(biāo)準(zhǔn)查詢運算符在編譯時轉(zhuǎn)換為擴(kuò)展方法。所以兩者都是一樣的。
可以根據(jù)標(biāo)準(zhǔn)查詢運算符提供的功能對其進(jìn)行分類。下表列出了標(biāo)準(zhǔn)查詢運算符的所有分類:
類別 | 標(biāo)準(zhǔn)查詢運算符 |
---|---|
過濾 | Where, OfType |
排序 | OrderBy, OrderByDescending, ThenBy, ThenByDescending, Reverse |
分組 | GroupBy, ToLookup |
聯(lián)合 | GroupJoin, Join |
投射 | Select, SelectMany |
聚合 | Aggregate, Average, Count, LongCount, Max, Min, Sum |
修飾 | All, Any, Contains |
元素 | ElementAt, ElementAtOrDefault, First, FirstOrDefault, Last, LastOrDefault, Single, SingleOrDefault |
集合 | Distinct, Except, Intersect, Union |
分區(qū) | Skip, SkipWhile, Take, TakeWhile |
串聯(lián) | Concat |
相等 | SequenceEqual |
范圍狀態(tài) | DefaultEmpty, Empty, Range, Repeat |
轉(zhuǎn)換 | AsEnumerable, AsQueryable, Cast, ToArray, ToDictionary, ToList |
在下一部分中了解每個標(biāo)準(zhǔn)查詢運算符。