1. 参照潘帅的知识库文档<<基于 ABP 框架的后端代码解决方案创建流程 >> 创建项目
2. 在下载项目的网址中我创建了两种类型的项目,(是否包含了登录、注册、用户和租户管理界面)
3. 目录结构如下区别
(1) 移除SQL Server的 Nuget 包
选中工具->Nuget包管理器 > 程序包管理控制台,选中 .EntityFrameworkCore
输入命令:
uninstall-package microsoft.entityframeworkcore.design
uninstall-package microsoft.entityframeworkcore.sqlserver
(2) 安装MySQL的 Nuget 包
输入命令:
install-package pomelo.entityframeworkcore.mysql.design
install-package pomelo.entityframeworkcore.mysql
(3) 安装包引用如下图所示
(4) 更改配置文件
在解决方案的EntityFrameCore层找到 DbContextOptionsConfigurer 文件,并做修改。
(5) 修改数据库连接字符串
带用户、角色的模板需2个地方更改连接字符串,遗漏更改会出现如下错误。
(6) 添加数据迁移
删除EntityFrameCore层中的 Migrations 文件夹里的所有文件,别删除 Migrations 文件夹,然后重新生成解决方案,在程序包管理控制台中,选中 EntityFrameCore 。
输入命令:
Add-Migration Init
此时在Migrations的文件会新增文件。
Update-Database
1. 在.Core项目中添加模型类
该模型类继承Abp.Domain.Entities.Auditing;会自动创建数据库表Student的主键Id、创建人Id、创建人时间、是否删除、删除人、删除时间、修改人、修改时间
2. 在.EntityFrameworkCore项目的 ProjectDbContext.cs 文件中相关代码
3. 打开程序包管理控制台执行命令
执行上面连接MySQL中(第 6 条步骤 2 条命令)
Add-Migration Name(Name 可自取)
Update-Database
4. 命令过程中出错信息
修改mysql默认数据库引擎改为 INNODB, 重启以下 mysql 数据库在进行数据库迁移就可以。