Entity Framework Core 2.0 新特性: https://www.cnblogs.com/stulzq/p/7366044.html
Entity Framework Core 2.0 使用入門: https://www.cnblogs.com/stulzq/p/7717873.html
Entity Framework Core 2.0 使用代碼進行自動遷移: https://www.cnblogs.com/stulzq/p/7729380.html
補充
通過NuGet安裝 EF Core
EF實體框架有3種類型,
Data First
、Model First
、Code First
。
從項目實體文件生成數據庫表的命令 (Code First)
-
第一步:需要引入的NuGet包
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Tools
(EF工具包,創建實體)- 數據庫驅動
- Sql Server 請安裝
Microsoft.EntityFrameworkCore.SqlServer
- MySql/MariaDB請安裝
Pomelo.EntityFrameworkCore.MySql
(2.0及以上版本) - 其他數據庫請查看https://docs.microsoft.com/zh-cn/ef/core/providers/
- Sql Server 請安裝
-
第二步: 生成
實體文件
和DBContext(數據庫上下文)
見文章 -
第三步:通過遷移來創建數據庫,需在
工具->NuGet包管理器->程序包管理器控制台
選擇執行命令所在的項目
下輸入以下命令Add-Migration init
遷移成功可以看見在項目根目錄下添加了一個Migrations文件夾
-
更新遷移到數據庫,執行命令
Update-Database
然后刪除Migrations文件夾即可
從數據庫表生成項目實體文件的命令 (DB First)
-
需要引入的NuGet包
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Tools
(EF工具包,創建實體)- 數據庫驅動
- Sql Server 請安裝
Microsoft.EntityFrameworkCore.SqlServer
- MySql/MariaDB請安裝
Pomelo.EntityFrameworkCore.MySql
(2.0及以上版本) - 其他數據庫請查看https://docs.microsoft.com/zh-cn/ef/core/providers/
- Sql Server 請安裝
-
需在
工具->NuGet包管理器->程序包管理器控制台
中選擇執行命令所在的項目
下輸入以下命令Scaffold-DbContext "Server=.;database=test;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
或
Scaffold-DbContext "Data Source=rdsqjywf72g48u7zrw5alo.sqlserver.rds.aliyuncs.com,3433; Database=chehuoyiv3-dev; User ID=chy_dev; Password=Chy123456;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
命令格式為:
Scaffold-DbContext "數據庫連接字符串" EF組件名(Microsoft.EntityFrameworkCore.SqlServer/Pomelo.EntityFrameworkCore.MySql/等等) -OutputDir 輸出文件夾名稱
[補充]
添加Nuget包方式 :
方式一:在Nuget包管理器中搜索,例如搜索:Microsoft.EntityFrameworkCore.SqlServer,然后安裝
方式二:在程序包管理器控制台
中輸入Install-Package Microsoft.EntityFrameworkCore.SqlServer (可能不成功)