VS 2019基架的ASP.NET Core身份验证(个人用户账户)默认使用MSSQL,笔者项目数据库采用MySQL 5.7,所以需要将ASP.NET Core身份验证所依赖数据库修改为MySQL。
笔者开发环境为:
ASP.NET Core 3.1.1
EF Core 3.1.1
Pomelo.EntityFrameworkCore.MySql 3.1.1
步骤
1.移除MSSQL相关包
使用NuGet包管理器,移除Microsoft.EntityFrameworkCore.SqlServer包。
2.移除现有数据库迁移代码
定位至解决方案/Data/Migrations目录,删除Migrations文件夹及文件。
3.引用Pomelo.EntityFrameworkCore.MySql 3.1.1
使用NuGet管理器,安装Pomelo.EntityFrameworkCore.MySql 3.1.1。
4.注入MySQL数据库上下文
删除appsettings.json中MSSQL所用数据库连接字符串(默认为ConnectionStrings/DefaultConnection),增加MySQL连接字符串。
“AuthConnection”: “Server=127.0.0.1;database=db;uid=root;password=123456;”
接下来修改Startup.ConfigureServices中代码,将UseSqlServer和连接字符串名称(如下图标红内容)
修改为UseMySql和AuthConnection(如下图标红内容)。
注意,AuthConnection为笔者所命名MySQL连接字符串,可自行修改。其对应点为appsettings.json中ConnectionStrings中元素和Startup.ConfigureServices中注入数据库上下文所使用的连接字符串。