概述
Entity Framework Core 有两种常用的工作机制,一种是基于实体类去生成数据库表( Code First),一种是由数据库表生成实体类(DB First)。可以使用 Scaffold-DbContext
EF Core 包管理器控制台(PMC)工具的命令或 dotnet ef dbcontext scaffold
.net 命令行接口(CLI)工具的命令来执行该命令。
何时DB First?
一般大型的项目,表结构复杂,字段很多时,由数据库设计软件设计好表以后再去反向工程的做法更可取。
前提条件
EFCore 3.1及以上需要手动安装以下三个,以SQL server为例。
Scaffold-DbContext 命令
该命令的第一个参数是指向数据库的连接字符串。 工具将使用此连接字符串来读取数据库架构。在PMC窗口中输入如下代码
Scaffold-DbContext 'Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Chinook' Microsoft.EntityFrameworkCore.SqlServer
可以在Sql Server对象资源管理器选择数据库》》选择数据库》》右键属性查看,如下图