Entity Framework Core in Action
Entityframework Core in action是 Jon P smith
所著的關於Entityframework Core 書籍。原版地址. 是除了官方文檔外另一個學習EF Core的不錯途徑, 書中由淺入深的講解的EF Core的相關知識。因為沒有中文版,所以本人對其進行翻譯。 預計每兩天一篇更新 PS: 翻譯難免限於本人水平有不准確的地方,建議英文水平不錯的同學直接查看原版,有不足的地方歡迎指正
第一部分目錄導航
理解EF Core數據庫查詢
現在我們去查看如何使用EF Core查詢數據庫了. 圖2.7展示了一個示例查詢,其中包含三個重要的部分
- 注: 如果你熟悉EF 6.x或LINQ,可以跳過本節內容
圖2.7中展示了由幾個方法組成的一行代碼,它們是函數式編程的風格,這樣的風格在邏輯上更加直觀,更容易閱讀. 下面描述代碼的三個部分
應用程序數據庫上下文的屬性訪問
代碼的第一部分通過EF Core連接到數據庫, 引用數據庫表的最常用的方法是通過數據庫上下文的DbSet
在本章都是使用數據庫上下文的屬性訪問數據庫表,在后面的章節會介紹到訪問類或屬性的其他方法,思想基本是一樣的. 都需要通過EF Core連接到數據庫開始
一系列的LINQ/ EF Core 命令
這部分是一組LINQ或EF Core方法,由它們構造查詢條件,根據業務LINQ查詢語句可能會變得非常復雜. 本章從最簡單的查詢示例開始,在后面會介紹到構建復雜的查詢語句
- 注: 如果你不熟悉LINQ,那么接下來的內容會很難理解,建議你查看一些LINQ的資料,比如 https://docs.microsoft.com/zh-cn/previous-versions/dotnet/articles/bb308959(v=msdn.10)
執行查詢命令
代碼的最后一部分很重要,在執行查詢命令之前,LINQ被保存為一系列的命令,它並沒有在數據上執行. EF Core將LINQ查詢的每一個方法轉換為正確的SQL在數據庫中執行. 在EF Core中查詢只有在查詢方法調用時才會執行,例如ToList()