如何在AbpNext项目中使用Mysql数据库
Posted Vincent
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在AbpNext项目中使用Mysql数据库相关的知识,希望对你有一定的参考价值。
配置步骤:
1、更改.Web项目的appsettings.json的数据库连接字符串。如:server=0.0.0.0;database=VincentAbpTest;uid=root;pwd=123456;
2、给.EntityFramworkCore项目添加Volo.Abp.EntityFrameworkCore.mysql引用,并删除Volo.Abp.EntityFrameworkCore.SqlServer引用;修复在{项目名称}EntityFrameworkCoreModule.cs文件中的编译错误
- 把using Volo.Abp.EntityFrameworkCore.SqlServer空间引用改为using Volo.Abp.EntityFrameworkCore.MySQL
- 把AbpEntityFrameworkCoreSqlServerModule改为AbpEntityFrameworkCoreMySQLModule
- 把 options.UseSqlServer();改为 options.UseMySQL();
3、找到.EntityFrameworkCore.DbMigrations项目中的{项目名}MigrationsDbContextFactory.cs文件,把其中的UseSqlServer改为UseMySql
4、在.EntityFrameworkCore.DbMigrations项目中{项目名}MigrationsDbContext.cs文件中的OnModelCreating方法加上如下代码:
builder.ConfigureIdentityServer(options => { options.DatabaseProvider = EfCoreDatabaseProvider.MySql; });
ref:https://github.com/abpframework/abp/issues/1920
5、删除.EntityFrameworkCore.DbMigrations项目中Migrations文件夹下的文件
6、在Package Manager Console中初始化数据库,如下图(此方法不能生成seed数据,导致系统出错)
6、运行.DbMigration项目初始化数据库
以上是关于如何在AbpNext项目中使用Mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Typescript 项目中使用 express-mysql-session?
如何使用 PHP 和 MYSQL 在单个单元格数据库中插入/存储多个项目