LINQ 語法簡介 設計人:顏嘉君
LINQ 概觀 Language-Integrated Query Anders Hejlsberg微軟首席架構師發起程式語言內建 query 架構 語言層級 技術類型 資料來源類型
語言層級 C# C# 3.0 VB VB 9.0 其他程式語言
技術類型 LINQ to Object LINQ to ADO.NET LINQ to XML LINQ to DataSet LINQ to SQL LINQ to XML
資料來源類型 物件:集合, 陣列,字串等 關連資料庫 DataSet XML
LINQ 優點 可以用單一且一致的LINQ語法查遍所有資料來源 利用.NET資源 編譯時期的語法檢查,可以及早發現錯誤,不像SQL語法要到執行期才能發現。 強制型別檢查,可以事先檢查資料型態是否相符 VS 2008 的支援
IEnumerable, IEnumerator IEumerable GetEnumerator IEnumerator MoveNext Reset
System.Linq 命名空間 類別 Eumerable Lookup Queryable 介面 IGouping ILookup IOrderedEnumerable IOrderedQueryable, IOrderedQueryable<T> IQueryable, IQueryable<T> IQueryProvider
Enumerable 擴充方法 過濾 投影 群組 OfType Where Select SelectMany GroupBy ToLookUp
Enumerable 擴充方法(二) 排序 OrderBy, OrderByDescending ThenBy, ThenByDescending 彙總 Aggregate Average Count LongCount Max Min Sum
Enumerable 擴充方法(三) 關連 集合 Join GroupJoin Distinct Except Intersect Union
Enumerable 擴充方法(四) 建構 檢核 DefaultEmpty Empty Range Repeat All Any Contains
Enumerable 擴充方法(五) 擷取 單一元素 Skip, SkipWhile Take, TakeWhile First, FirstOrDefault Last, LastOrDefault ElementAt, ElementAtOrDefault Single, SingleOrDefault
Enumerable 擴充方法(六) 轉換 AsEnumerable ToArray ToList ToDictionary ToLookup Cast OfType