.NET 7 中 LINQ 的瘋狂性能提升

LINQ 是 Language INtegrated Query 單詞的首字母縮寫,翻譯過來是語言集成查詢。它為查詢跨各種數據源和格式的數據提供了一致的模型,所以叫集成查詢。由於這種查詢並沒有製造新的語言而只是在現有的語言基礎上來實現,所以叫語言集成查詢

語言集成查詢 (LINQ) 是一系列直接將查詢功能集成到 C# 語言的技術統稱。 數據查詢歷來都表示為簡單的字符串,沒有編譯時類型檢查或 IntelliSense 支持。 此外,需要針對每種類型的數據源了解不同的查詢語言:SQL 數據庫、XML 文檔、各種 Web 服務等。 藉助 LINQ,查詢成為了最高級的語言構造,就像類、方法和事件一樣。

對於編寫查詢的開發者來說,LINQ 最明顯的「語言集成」部分就是查詢表達式。 查詢表達式採用聲明性查詢語法編寫而成。 使用查詢語法,可以用最少的代碼對數據源執行篩選、排序和分組操作。 可使用相同的基本查詢表達式模式來查詢和轉換 SQL 數據庫、ADO .NET 數據集、XML 文檔和流以及 .NET 集合中的數據。

與 .NET 6 相比,.NET 7 中的某些 LINQ 方法具有一些驚人的性能改進。 看看下面的比率列,速度提升高達98%。

linq-dotnet7

有位兄弟在B 站搬過來了相關的視頻://www.bilibili.com/video/BV1h14y1L73h/

image