【ABP.Net】2.多数据库支持&&初始化数据库

abp默认连接的数据库是MSSQL,但是在开发过程中往往很多开发者不满足于mssql。

所以这里演示一下把mssql改成postgresql,来进行接下来的系统开发。

abp的orm是用EF的。那么我们就从ef动手。

首先我们先安装下面两个库

Install-Package Npgsql.EntityFrameworkCore.PostgreSQL -Version 2.2

Install-Package Npgsql.EntityFrameworkCore.PostgreSQL.Design -Version 1.1.1

顺带一提,如果想用mysql的话  

Install-Package MySql.Data.EntityFrameworkCore -Version 8.0.15

安装完成之后,我们只要修改一下配置文件

把builder.UseSqlServer修改成UseNpgsql

然后修改Migrator层的根目录添加配置文件appsettings.json的连接字符串 

下面是内容

{
  "ConnectionStrings": {
    "Default": "" //写入你的连接字符串
  }
}

将启动项设置成

运行。

 

键入Y

然后数据库就初始完毕了。期间报了一个错误,原因是创建初始化数据的时候,不为空的字段变成了空的。

我的解决方案是用ef codefirst迁移的一下 把初始化数据给迁移过去。

然后把Web.Mvc设置成启动项目,运行后,我们可以看到项目可以正常运行了。

abp默认的账户是admin 123qwe。

OK结束。

码云上我把appsetting设置成忽略文件了,只要新建一个就行了

{
  "ConnectionStrings": {
    "Default": ""//你的连接字符串
  },
  "Authentication": {
    "JwtBearer": {
      "IsEnabled": "true",
      "SecurityKey": "Learn_C421AAEE0D114E9C",
      "Issuer": "Learn",
      "Audience": "Learn"
    }
  },
  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Debug",
      "System": "Information",
      "Microsoft": "Information"
    }
  }
}
原文地址:https://www.cnblogs.com/xuxml/p/10560607.html