【中階級】-LINQ介紹

閱讀時間約 3 分鐘

  全名為Language Integrated Query,又稱LINQ,它是什麼呢?用在哪裡呢?其實我對它是很陌生的,因為目前還未使用過覺得它好像蠻重要的應該要學起來,因此透過這次寫Blog方式督促自己學習,那麼接下來就來分享一下我目前對它的了解吧~


一、什麼是LINQ?

它是一個擁有「集合元素進行資料查詢」的技術,直接將此技術整合到C#裡,也就是說對於任何資料型態只要是遇到以下這幾個型別:

1.實作 IEnumerable 介面

2. IEnumerable

3. IQueryable

4. IQueryable 的 Class

皆可以使用LINQ這一個語法去做查詢的,不用針對SQL資料庫、XML文件、Web服務等等不同資料類型去各別學習怎麼查詢資料,只要使用單一個LINQ這個語法就可以進行這些不同資料型態去做查詢了

LINQ架構-1

LINQ架構-1

這是LINQ架構圖,在了解它的過程中這樣的圖很常見到,用簡單的圖式來告訴我們LINQ可以支援查詢的可以分三種來源:

1.物件

2.關聯式資料庫(資料集、資料庫、實體)

3.XML

 

二、何時會使用它?

  當需要做「查詢」的時候,也就是說想要在資料中尋找一個元素或多個元素、對資料做排列或做一些處理(ex:運算)

 

三、怎麼使用它?

首先假設有一組陣列

int[] nArray = { 20, 34, 67, 11, 38, 79 };

接著可以使用LINQ做查詢,會有兩種查詢寫法:

1. 查詢運算式 (Query Expression Syntax) - 類似SQL方式

舉例:

IEnumerable<int>  Result = from  item  in  nArray  where  item < 40 select  item;

 

2. 標準查詢運算子 (Standard Query Operators) - 使用Lambda 表達式

舉例:

IEnumerable<int> Result = nArray.Where(item => item < 40);

 

LINQ主要會用到Where、Select、OrderBy、GroupBy等等,假如Lambda很陌生感覺是不同世界的東西,那可以先學第一種方式做查詢就好,等程式有一定程度的時候,回頭再來熟悉Lambda方式吧~

 

四、實作

Step1 : 建立UI介面

UI 介面

UI 介面


Step2 :使用類SQL方法的程式

使用類SQL方法

使用類SQL方法


Step3:看結果

使用類SQL方法 - 執行結果

使用類SQL方法 - 執行結果


Step4:使用Lambda 方法的程式

使用Lambda方法

使用Lambda方法


Step5:執行結果

使用Lambda方法 - 執行結果

使用Lambda方法 - 執行結果




參考資料:

1.認識基礎 LINQ | Jenifer.Code.World (jenifers001d.github.io)

2.使用 C# 的 Language Integrated Query (LINQ) - C# | Microsoft Learn

3.LINQ基本介紹:叡揚部落格 (gss.com.tw)

4.所以什麼是LINQ? | 深入探索 LINQ (peterhpchen.github.io)

5.LINQ自學筆記-打地基-認識LINQ - iT 邦幫忙::一起幫忙解決難題,拯救 IT 人的一天 (ithome.com.tw)

6.LINQ基礎 - 簡介 - HackMD

7.iT 邦幫忙::一起幫忙解決難題,拯救 IT 人的一天 (ithome.com.tw)

 

19會員
42內容數
Hello~ Welcome to my blog~❤ 這邊會分享我在程式這條道路中的學習與成長, 過程中從而了解自己的不足,再學習。 希望透過分享的方式, 也讓正在學習程式的夥伴們一起學習, 我們一起加油吧~ 「彼此都會成為彼此之間的影響力」(´,,•ω•,,)♡ ❣
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
創作者要怎麼好好休息 + 避免工作過量?《黑貓創作報#4》午安,最近累不累? 這篇不是虛假的關心。而是《黑貓創作報》發行以來可能最重要的一篇。 是的,我們這篇講怎麼補充能量,也就是怎麼休息。
Thumbnail
avatar
黑貓老師
2024-06-29
防曬產品係數測試報告彙整(2024年)從2014年起,自己對於市售防曬產品的效能產生了濃厚的興趣。因為當時候發現不少產品的防曬係數其實標示是有問題的,像是原本應該是人體測試的SPF與PA數值,實際上沒有做,只用機器測試的數據來充當,但這兩者卻有很大的差異。像是防曬係數其實有強度、廣度與平均度三個面向需要一起判斷,但多數廠商並沒有完整標示
Thumbnail
avatar
邱品齊皮膚科醫師
2023-04-27
【中產階級存亡戰】EP05. 行動自由權爭奪戰 - 高科技的迷湯 (電動車,天網監控, 個資數位化, 人工智慧)高科技的迷湯「一切都是為你好」 今天,要跟各位來談談行動自由的重要性,以及世界深層政府如何利用各種「高科技」來迷惑人民,讓他們自願放棄難能可貴的自由人權。
Thumbnail
avatar
Hank汽車部落格
2024-03-25
【中產階級存亡戰】EP04. 迷信左派 - 中產階級的必然敗北就人類心理層面的哲學觀來說,左派代表著理想,右派代表著現實,左派重視邏輯,右派重視經驗,左派追求公平,右派追求自由,左派強調人性的善良面,但忽視人性的本質面,右派則強調人性的現實私利,而忽視過度私利的後果,左派強調利他,右派強調利己。
Thumbnail
avatar
Hank汽車部落格
2024-03-25
【中產階級存亡戰】EP03. 左派新型共產主義終極目標 - 消滅中產階級今天我們要來談一個全球正在面臨的威脅,那就是共產主義在各先進民主國家的潛伏與侵蝕,你可能會認為共產主義不是早就失敗了嗎? 事實上並非如此,這篇Hank將以歷史脈絡來為大家剖析,共產主義誕生的原因與背景,並闡述統治者如何利用變種的「新型共產主義」瓦解全世界中產階級的陰謀。
Thumbnail
avatar
Hank汽車部落格
2024-03-25
【中產階級存亡戰】EP02. 世界政府的陰謀 - 保留五億人類的計畫 上一篇我們談到了中產階級可能在不久的未來,會被統治者的「終極殺器」- 人工智慧在極短的時間內被消滅殆盡,那麼這一篇,我們就要來讓你了解,為什麼「統治者」會想要消滅「中產階級」,而又會用什麼樣的方式進行「消滅」?
Thumbnail
avatar
Hank汽車部落格
2024-03-25
【中產階級存亡戰】EP01. 三百年的曇花一現? 正在消失的中產階級【中產階級存亡戰】EP01 你,是中產階級嗎? 你自認為是中產階級嗎?   也許這個問題很多人難以回答,那麼,我換個角度問。   你,是奴隸嗎? 你自認為是奴隸嗎?   我再多問一句。 你,想當奴隸嗎?   這樣問,可能你的答案會明確一點吧
Thumbnail
avatar
Hank汽車部落格
2024-03-25
中產階級的靈肉拷問│超速性追緝 Crash (1996)片名告訴我們或不告訴我們的,比你想得還多。本片台灣譯為<超速性追緝>,或許是「XX追緝令」的刻意誤導,用詞卻精準拿捏了速度之於激情的性幻想,縱然片中完全沒有任何警匪偵緝的橋段,使人腦補若不是法律又會是怎樣的力量「制裁」這樣的禁忌和悖德;中國片名<慾望號快車>,則或許挪用自名片<慾望街車>,強調車子的
Thumbnail
avatar
hashtalkmovies
2023-03-23
中產階級自救會草創階段心得:誰“覺得”自己是中產階級?五年多以前我一腳踏入日本社會創新的圈子,大概看了一圈後,發現所有階級都有社群跟安全網,就是中產階級沒有,所以需要解決中產階級問題是當務之急。
Thumbnail
avatar
東京裏物語
2023-02-02
中產階級自救會(2):為什麽中產階級需要自救?大概在四年多前,我剛任職於日本社會新創組織NCL與地方政府專案聘員時,意識到自己面臨的問題,是一整個階級的問題。中產階級是一個在心態上相對養尊處優的階級,這篇就跟各位聊聊為什麼中產階級需要自救。
Thumbnail
avatar
東京裏物語
2022-04-15
中產階級自救會(1)前言:從閱讀裡試著勾勒中產階級的樣貌 中產階級倡議1:中產階級是個脆弱的階級,現在貧富差距激化,逐漸消失的中產階級們該何去何從?
Thumbnail
avatar
東京裏物語
2022-01-10
中產階級的反擊對於投資理財的理解愈深,其實大多數都體現在你對於時間看法的轉變。
Thumbnail
avatar
菲力克斯
2019-08-23