abp 使用mysql_ABP Vnext使用mysql数据库

ABP Vnext支持Sqlserver、Mysql、PostgreSql等数据库,通过CLI模板建立的项目默认使用SqlServer,需要进行一定变更才支持其他数据库,下面以使用Mysql举例

1. 使用CLI建立一个带UI的MVC项目

abp new Acme.BookStoreUi --template app --database-provider ef --ui mvc --mobile none

建立后项目如下

14c6f5b88dba70fbf91c9d67979f165d.png

2. 使用Nuget安装支持Mysql的包并对代码进行修改

在EntityFrameworkCore项目里移除Volo.Abp.EntityFrameworkCore.SqlServer包

在EntityFrameworkCore项目里新增Volo.Abp.EntityFrameworkCore.Mysql包

修复因移除SqlServer包而报错的代码,把SqlServer改为Mysql

如下

usingVolo.Abp.EntityFrameworkCore.SqlServerusingVolo.Abp.EntityFrameworkCore.MySQL;typeof(AbpEntityFrameworkCoreSqlServerModule)typeof(AbpEntityFrameworkCoreMySQLModule)

options.UseSqlServer();

options.UseMySQL();

3. 修改Acme.BookStoreUi.DbMigrations项目下appsetting.json文件中的ConnectionStrings,修改为mysql数据库连接字符串,并复制进Acme.BookStoreUi.EntityFrameworkCore.DbMigrations项目。

4. 重建DbMigrations

首先,删掉Acme.BookStoreUi.EntityFrameworkCore.DbMigrations下原有的Migrations文件夹,重建Migrations,我使用EF CLI方式重建

终端进入Acme.BookStoreUi.EntityFrameworkCore.DbMigrations,新建Migrations

dotnet ef migrations add initialDB

更新至数据库

dotnet ef database update initialDB

运行Acme.BookStoreUi.DbMigrations项目初始化数据。

5.Acme.BookStoreUi.Web项目同样修改appsetting.json文件中的ConnectionStrings,运行即可

d5bbfc2cb7923e7e2c9cef0ad45e89f9.png

原文:https://www.cnblogs.com/aquilahkj/p/13514640.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ABP创建MySQL数据库的步骤如下: 1. 首先,使用ABP提供的项目模板创建一个新的项目。该模板提供了Module Zero项目,其中包含了用户、角色、权限等通用功能。然而,使用该模板连接MySQL可能会导致错误,无法正常运行。 2. 为了解决ABP+MySQL的问题,需要进行一些修改。打开源代码中的`DYDbContextConfigurer`类,该类用于配置数据库连接。在该类中,找到`Configure`方法,并将其中的代码修改如下: ```csharp public static class DYDbContextConfigurer { public static void Configure(DbContextOptionsBuilder<DYDbContext> builder, string connectionString) { builder.UseMySql(connectionString, new MySqlServerVersion(new System.Version(5, 0))); } public static void Configure(DbContextOptionsBuilder<DYDbContext> builder, DbConnection connection) { builder.UseMySql(connection, new MySqlServerVersion(new System.Version(5, 0))); } } ``` 3. 接下来,打开Web项目的Web.config文件。由于上一步添加了`MySql.Data.Entity`,所以Web.config已经添加了MySQL的相关配置。在Web.config中,找到连接字符串部分,注释掉SQL Server的连接字符串,并添加新的MySQL连接字符串。 通过以上步骤,你就可以成功创建ABP项目的MySQL数据库了。请确保你已经正确配置了MySQL数据库,并提供了正确的连接字符串。 #### 引用[.reference_title] - *1* *3* [使用ABP EntityFramework连接MySQL数据库](https://blog.csdn.net/weixin_31292909/article/details/113164152)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ABP框架数据库改为MySQL](https://blog.csdn.net/daiyue945/article/details/128236930)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值