了解 語言整合 LINQ 查詢

2021-09-21 13:06:01 字數 1290 閱讀 3746

linq提供了一種跨資料來源和資料格式的同意模型,實現查詢。

ienumerable介面在.net中是非常重要的介面,它允許開發人員定義foreach語句功能的實現並支援非泛型方法的簡單的迭代,ienumerable介面是.net framework中最基本的集合訪問器。它定義了一組擴充套件方法,用來對資料集合中的元素進行遍歷、過濾、排序、搜尋等操作。

//完整語法

from [type] id in source

[join [type] id in source on expr equa;s [into subgroup]]

[from [type] id in source | let id=expr | where condition]

[orderby ordering,ordering,ordering...]

select expr|group expr by key

[into id query]

ienumerable介面是linq查詢的核心介面,只有實現了ienumerable介面資料來源,才能執行相關的linq操作。

linq操作步驟:

獲取資料源

建立查詢

執行查詢

1.lambda表示式基於數學中的」λ 演算」 得名;

什麼是λ 演算呢?

λ 演算是一套用於研究函式定義、函式應用和遞迴的形式系統。λ 演算可以被稱為最小的通用程式語言。它包括一條變換規則 (變數替換) 和一條函式定義方式,λ演算之通用在於,任何乙個可計算函式都能用這種形式來表達和求值。因而,它是等價於圖靈機的。儘管如此,λ演算強調的是變換規則的運用,而非實現它們的具體機器。可以認為這是一種更接近軟體而非硬體的方式。它乙個數理邏輯形式系統,使用變數代入和置換來研究基於函式定義和應用的計算。希臘字母λ被用來在λ演算模型中表示將乙個變數繫結在乙個函式中。

語法:形參列表=>方法體

2.方法語法

方法語法的本質就是通過擴充套件方法和lambda表示式來建立查詢的。

static void main(string args)

;ienumerablequery = demo

.where(n => n.contains("a"))

//按長度進行排列

.orderby(n => n.length)

//把結果轉換成大寫

.select(n => n.toupper());

foreach (string demo in query)

} // result:

tamay

c 學習筆記 語言整合查詢LINQ

using system using system.collections.generic using system.linq using system.text using system.threading.tasks 語言整合查詢linq 查詢表示式必須以 from 子句開頭,且必須以 sele...

查詢語言LINQ 1

查詢語言linq static void main ienumerablequery from s in names where s.length 5 orderby s select s.toupper foreach string item in query 我們看from s in names...

Linq 1查詢語言

查詢語言我們了解很多,大體上他們的思路語言都是相同的,linq也不難,只是我們把它想的太複雜了而已。linq語言整合化查詢 基礎 1,泛型 2,lambda from 元素 in 集合 where 元素條件 orderby 元素.屬性 ascending group 元素 by 元素.屬性 sele...