如何在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项目初始化数据库

 

posted @ 2019-12-20 23:00  Vincent-Huang  阅读(347)  评论(0编辑  收藏  举报