abp中将SqlServer切换为MySQL

2019-11-06 来源: 昵称已存在嘿 发布在  https://www.cnblogs.com/liguix/p/11804208.html

一.移除默认SQL Server相关包

在EntityFrameworkCore项目下移除包Microsoft.EntityFrameworkCore.SqlServer、Microsoft.EntityFrameworkCore.Design

二、 添加MySql相关包

在EntityFrameworkCore项目下移除包Pomelo.EntityFrameworkCore.MySql、Pomelo.EntityFrameworkCore.MySql.Design

三、修改EntityFrameworkCore源代码

        public static void Configure(DbContextOptionsBuilder<SignalRChatDbContext> builder, string connectionString)
        {
            //builder.UseSqlServer(connectionString);
            builder.UseMySql(connectionString);
        }

        public static void Configure(DbContextOptionsBuilder<SignalRChatDbContext> builder, DbConnection connection)
        {
            //builder.UseSqlServer(connection);
            builder.UseMySql(connection);
        }

四、 修改数据库链接字符串

修改host层的appsetting.cs文件

 "ConnectionStrings": {
    //"Default": "Server=localhost; Database=SignalRChatDb; Trusted_Connection=True;"
    "Default": "Server=localhost; Database=SignalRChatDb; User ID=root; Password=123456; port=3306"
  },

五、迁移数据

将EntityFramework 项目中的Migrations文件夹,然后删除该文件夹下面的所有迁移文件(这些迁移文件都是SqlServer的)

在删除所有的迁移文件后,选择你的 .Web 项目为开始项目,打开VS的包管理控制台,并在包管理控制台中选择 .EntityFramework 项目作为默认项目。然后在控制台中执行下面命令:

Add-Migration "AbpZero_Initial"

现在你可以使用下面命令来创建数据库:

Update-Database

相关文章