.net core ef 通过dbfirst方式连接mysql数据库

时间:2021-07-08 04:47:27
1. 创建基于.net core的项目(过程略)

2. 利用nuget添加以下引用

         MySql.Data.EntityFrameworkCore
         Pomelo.EntityFrameworkCore.MySql
         Microsoft.EntityFrameworkCore.Tools

.net core ef 通过dbfirst方式连接mysql数据库

3. 打开 "程序包管理器控制台",执行语句

Scaffold-DbContext "Server=xxx;User Id=xxx;Password=xxxm;Database=xxx" Pomelo.EntityFrameworkCore.MySql -o Models -f

.net core ef 通过dbfirst方式连接mysql数据库

 

代码参数说明:

-OutputDir (-o)*** 实体文件所存放的文件目录
-ContextDir *** DbContext文件存放的目录
-Context *** DbContext文件名
-Schemas *** 需要生成实体数据的数据表所在的模式
-Tables(-t) *** 需要生成实体数据的数据表的集合
-DataAnnotations
-UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)
-Force (-f)强制执行,重写已经存在的实体文件

 注意:

通过此方法如果数据库设置了外键,生成会失败,显示的原因是 time out ,修改时长后也不行,貌似进入了死循环,不知道各位有没有什么解决方案.