.NET 6 EFCore語法說明

目的

說明EFCore基本語法,EFCore的基礎為Linq,所以使用上與Linq邏輯一模一樣,只是語法有些微差異。

建立新專案

選擇ASP.NET Core Web API專案範本,並執行下一步 步驟1

設定新的專案

命名你的專案名稱,並選擇專案要存放的位置。 步驟2

其他資訊

直接進行下一步 步驟3

NuGet加入套件

  • Microsoft.EntityFrameworkCore.Sqlite

  • Microsoft.EntityFrameworkCore.Design

步驟4

新增Student.cs類別檔

新增Models資料夾,並在裡面新增Student.cs類別檔 範例5-1

編輯Student.cs類別檔

範例6-1

新增EFCoreContext.cs類別檔

新增DBContext資料夾,並在裡面新增EFCoreContext.cs類別檔 範例7-1

編輯EFCoreContext.cs類別檔

範例8-1

編輯Program.cs檔

範例9-1

到套件管理器主控台下Terminal指令

檢視>其他視窗>套件管理器主控台 範例10-1

下方會出現命令列 ![範例10-2](https://user-images.githubusercontent.com/19286751/192146003-e32e32c5-7f9d-405d-9374-13a6aeea86d3.png

)輸入dir會顯示目錄檔案及子目錄清單 範例10-3

輸入cd EFCoreExample_Advanced移動到專案檔底下後再輸入dir確認是否到正確路徑 範例10-4

輸入dotnet tool install --global dotnet-ef在全域安裝EFCore CLI工具(如果已經安裝,會出現下圖訊息,即可忽略此步驟) 範例10-5

輸入dotnet ef migrations add CreateInitial初始化SQLite 範例10-6

輸入dotnet ef database update更新SQLite資料表 範例10-7

成功就會自動產生Migrations資料夾 範例10-8

編輯WeatherForecastController檔案編輯

  • 寫新的對外API:QueryAsync

步驟11-1
  • 寫新的對外API:QueryFirstOrDefaultAsync

步驟11-2
  • 交易機制 當有多張表需要異動時,為了確認資料的一致性,會需要透過交易機制做保護,只有全部成功或全部失敗。

步驟11-3

參考

N+1 交易

範例檔

GitHub

Last updated