zoukankan      html  css  js  c++  java
  • 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

    建立后项目如下

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

    • 在EntityFrameworkCore项目里移除Volo.Abp.EntityFrameworkCore.SqlServer包
    • 在EntityFrameworkCore项目里新增Volo.Abp.EntityFrameworkCore.Mysql包
    • 修复因移除SqlServer包而报错的代码,把SqlServer改为Mysql

      如下

    using Volo.Abp.EntityFrameworkCore.SqlServer
    
    using Volo.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,运行即可

  • 相关阅读:
    Java实现 LeetCode 461 汉明距离
    在Linux运行期间升级Linux系统(Uboot+kernel+Rootfs)
    AM335x(TQ335x)学习笔记——挂载Ramdisk
    Ramdisk文件系统的制作与调试运行
    u-boot向linux内核传递启动参数(详细)
    uboot环境变量与内核MTD分区关系
    MMU
    INTERRUPT CONTROLLER
    UART
    GPIO
  • 原文地址:https://www.cnblogs.com/aquilahkj/p/13514640.html
Copyright © 2011-2022 走看看