.net core 2.1 mysql_.net core 2.1 Ef 连接Mysql数据库 DB first

本文介绍.net core2.1版本下 Mysql数据库采用DB first方式使用Ef

1. 新建基于.net core2.1的项目(略)

2. 从nuget中引用Microsoft.AspNetCore.App (本次使用2.1.1版本,)

d1495662cffc38601e116fd087123b75.png

3. 从nuget中引用Pomelo.EntityFrameworkCore.MySql (本次使用2.1.2), Microsoft.EntityFrameworkCore(本次使用2.1.3),Microsoft.EntityFrameworkCore.Relational(本次使用2.1.3)  保存整个项目

4. 打开项目文件夹, 找到.csproj 文件, 文本文档打开,在itemGroup中添加 

本次使用的版本是2.0.3,大家可以根据自己的需求添加版本

0e20db3212e67341419702ed87ed98b9.png

bb526daddaa1cfb40805bf766d66709c.png

5. 在 .csproj 文件所在的目录 按住 shift 键加鼠标右键, 打开 powershell 窗口

92f2fa6e12e791f6a73aa1424b27bde3.png

6. 执行代码  dotnet ef dbcontext scaffold "Server=***;User Id=***;Password=***;Database=***" "Pomelo.EntityFrameworkCore.MySql"-o Models

其中 Models表示你需要存放实体的文件夹名

参数说明

-o 输出目录(-OutputDir)

-f 覆盖现有文件(-Force),数据库更新时会用到

-t 指定表名(-Tables)

fca48e3addff004e526659ae0f0d5d39.png

执行完成之后就自动生成了实体

99ca29ecfc3a912630dc48a04dbeaa7d.png

7. 注意事项

(1). 项目生成不能报错,报错后无法更新实体,报build fail 错误

(2). 生成的时候不能有警告,有警告的字段会自动跳过该字段,导致实体比数据库少字段,或者导致该字段类型错误

(3). 如果tfs设置的是独占,那一定要先将实体全部签出,再更新,否则无法覆盖实体,导致更新不了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值