原文位址:https://blog.spiritling.cn/posts/daefc0a4/
安裝NuGet包
點選
工具
->
NuGet包管理器
->
程式包管理器控制台
分别安裝以下幾個包
Mysql 版本:
Install-Package MySql.Data.EntityFrameworkCore -Pre
Install-Package Pomelo.EntityFrameworkCore.MySql
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design
複制
Sql server 版本:
Install-Package Microsoft.EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design
複制
運作指令生成實體
Mysql 版本:
Scaffold-DbContext "server=.;userid=tech5_kj;pwd=xxx;port=3306;database=tech5_kj;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -Force
或者
Scaffold-DbContext "server=.;userid=tech5_kj;pwd=xxx;port=3306;database=tech5_kj;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -UseDatabaseNames -Force
複制
Sql server版本:
Scaffold-DbContext "Data Source=.;Initial Catalog=EFCore_dbfirst;User ID=sa;Password=sa.123" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force
複制
參數說明
-OutputDir *** 實體檔案所存放的檔案目錄
-ContextDir *** DbContext檔案存放的目錄
-Context *** DbContext檔案名
-Schemas *** 需要生成實體資料的資料表所在的模式
-Tables *** 需要生成實體資料的資料表的集合
-DataAnnotations
-UseDatabaseNames 直接使用資料庫中的表名和列名(某些版本不支援)
-Force 強制執行,重寫已經存在的實體檔案
複制