.net core3.1 efcore(生成實體類)
1.安裝包
Install-Package MySql.Data.EntityFrameworkCore
Install-Package Pomelo.EntityFrameworkCore.MySql
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design
2.執行語句
打開項目檔案夾(需要放置實體類和dbcontext檔案的位址 ),cmd 執行指令
mysql版本如下:(server=localhost;不能為server=.;)
dotnet ef dbcontext scaffold "Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Chinook" Microsoft.EntityFrameworkCore.SqlServer
PMC 包管理工具(僅限制vs2019使用)
Scaffold-DbContext -Connection "server=127.0.0.1;uid=root;pwd=123;database=Book;" -Provider Pomelo.EntityFrameworkCore.MySql -OutputDir Models -ContextDir Db -Context BookContext -Table[單獨表生成去除的話生成全部] T_User -UseDatabaseNames -Force
以上代碼如果執行PMC指令的時候報錯如下
則重新安裝 最新版 Install-Package Microsoft.EntityFrameworkCore.Tools
注意:如果報 dotnet ef 無此指令 運作如下代碼
dotnet tool install --global dotnet-ef
官方注釋:
-OutputDir *** 實體檔案所存放的檔案目錄
-ContextDir *** DbContext檔案存放的目錄
-Context *** DbContext檔案名
-Schemas *** 需要生成實體資料的資料表所在的模式
-Tables *** 需要生成實體資料的資料表的集合
-DataAnnotations
-UseDatabaseNames 直接使用資料庫中的表名和列名(某些版本不支援)
-Force 強制執行,重寫已經存在的實體檔案
微軟官方文檔 中斷性變更:
https://docs.microsoft.com/zh-cn/ef/core/what-is-new/ef-core-3.0/breaking-changes?toc=/dotnet/core/compatibility/toc.jso
https://docs.microsoft.com/zh-cn/ef/core/miscellaneous/cli/dotnet
https://docs.microsoft.com/zh-cn/ef/core/managing-schemas/scaffolding?tabs=dotnet-core-cli
————————————————
版權聲明:本文為CSDN部落客「chafferer_」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。