C# Linq查询
C# Linq查詢
獲取數據源
在 LINQ 查詢中,第一步是指定數據源。 和大多數編程語言相同,在使用 C# 時也必須先聲明變量,然后才能使用它。 在 LINQ 查詢中,先使用 from 子句引入數據源 (customers) 和范圍變量 (cust)。
`篩選
var queryLondonCustomers = from cust in customerswhere cust.City == "London"select cust;排序
orderby 子句根據要排序類型的默認比較器,對返回序列中的元素排序
分組
group 子句用于對根據您指定的鍵所獲得的結果進行分組。 例如,可指定按 City 對結果進行分組,使來自 London 或 Paris 的所有客戶位于單獨的組內。 在這種情況下,cust.City 是鍵。
使用 group 子句結束查詢時,結果將以列表的形式列出。 列表中的每個元素都是具有 Key 成員的對象,列表中的元素根據該鍵被分組。 在循環訪問生成組序列的查詢時,必須使用嵌套 foreach 循環。 外層循環循環訪問每個組,內層循環循環訪問每個組的成員。
如果必須引用某個組操作的結果,可使用 into 關鍵字創建能被進一步查詢的標識符。 下列查詢僅返回包含兩個以上客戶的組:
聯接
聯接操作在不同序列間創建關聯,這些序列在數據源中未被顯式模塊化。 例如,可通過執行聯接來查找所有位置相同的客戶和分銷商。 在 LINQ 中,join 子句始終作用于對象集合,而非直接作用于數據庫表。
在 LINQ 中,不必像在 SQL 中那樣頻繁使用 join,因為 LINQ 中的外鍵在對象模型中表示為包含項集合的屬性。 例如 Customer 對象包含 Order 對象的集合。 不必執行聯接,只需使用點表示法訪問訂單:
from order in Customer.Orders...總結
- 上一篇: 基于 abp vNext 和 .NET
- 下一篇: C#反射复制实体