ABP框架应用-MySQL数据库集成
1. 框架以外依赖包引入
1.1. Pomelo.EntityFrameworkCore.MySql
1.2. Pomelo.EntityFrameworkCore.MySql.Design
2. 冲突包的检查和排除(自己遇到的出问题的地方)
2.1. 排除-Mysql.Data.Entity,具体原因不详。
2.2. 排除-MySQL.Data.EntityFrameworkCore,EfCore 报错,无法进行类型的强制转换,目前官方没有解决,所以使用Pomelo来替代。
3. 在EntityFrameworkCore层修改DbContextConfigurer文件中的数据库引用。
4. 在EntityFrameworkCore层修改DbContext的OnModelCreating方法,添加映射最大值限制。
5. 修改Migrator下的appsetting.json和Web.Host下的appsetting.json中的数据库连接配置
6. 在NuGet程序包管理控制台执行生成迁移脚本命令。
7. 在NuGet程序包管理控制台,执行EF数据库更新语句。
8. 用Navicat工具连接到数据库验证是否生成对应数据库。
【说明】ABP原始框架环境准备:
ASP.NET Core 2.X
.NET Core (Cross Plateform)
vue 2.5.16
vuex 3.0.1
ABP 3.8.1
yarn 1.9.4
1. 框架以外依赖包引入
1.1. Pomelo.EntityFrameworkCore.MySql
【说明】MYSQL基础支撑
1.2. Pomelo.EntityFrameworkCore.MySql.Design
【说明】生成升级脚本的设计支撑,例如,MYSQL数据库字段类型到实体类型的映射关系。
2. 冲突包的检查和排除(自己遇到的出问题的地方)
2.1. 排除-Mysql.Data.Entity,具体原因不详。
2.2. 排除-MySQL.Data.EntityFrameworkCore,EfCore 报错,无法进行类型的强制转换,目前官方没有解决,所以使用Pomelo来替代。
3. 在EntityFrameworkCore层修改DbContextConfigurer文件中的数据库引用。
【说明】修改前:
public static void Configure(DbContextOptionsBuilder<CourseraDbContext> builder, string connectionString)
{
builder.UseSqlServer(connectionString);
}
【说明】修改后:
public static void Configure(DbContextOptionsBuilder<CourseraDbContext> builder, string connectionString)
{
builder.UseMySql(connectionString);
}
【说明】注意:
如果引用的是UseMYSql,则说明,引用包为MySQL.Data.EntityFrameworkCore,生成迁移脚本的时候,仍然会报无法进行转换的错误。
4. 在EntityFrameworkCore层修改DbContext的OnModelCreating方法,添加映射最大值限制。
【说明】modelBuilder.Entity<ApplicationLanguageText>().Property(p => p.Value).HasMaxLength(500);
没有验证过为什么这样做。
5. 修改Migrator下的appsetting.json和Web.Host下的appsetting.json中的数据库连接配置
【说明】修改后的格式:
"Default": "Server=[mysql的连接地址]; port=[端口]; Database=[数据库名称]; user id=[登录账户]; password=[登录密码];"
6. 在NuGet程序包管理控制台执行生成迁移脚本命令。
【说明】执行:add-migration [迁移脚本名称]
执行成功后,将在 Migrations中生成[迁移脚本名称]命名的脚本文件。
7. 在NuGet程序包管理控制台,执行EF数据库更新语句。
【说明】执行 : update-database
8. 用Navicat工具连接到数据库验证是否生成对应数据库。
ABP框架应用-MySQL数据库集成的更多相关文章
- ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...
- ABP框架连接Mysql数据库
开始想用Abp框架来搭建公司的新项目,虽然一切还没有定数,但是兵马未动,粮草先行,我先尝试一下整个过程,才能够更好的去争取机会. 此次技术选型:Abp(Asp.Net core mvc)+mysql( ...
- Asp.NET Core+ABP框架+IdentityServer4+MySQL+Ext JS之验证码
验证码这东西,有人喜欢有人不喜欢.对于WebApi是否需要验证码,没去研究过,只是原来的SimpleCMS有,就加上吧. 在WeiApi上使用验证码,关键的地方在于WeiApi是没有状态的,也就是说, ...
- ABP框架使用Mysql数据库
参考文档:https://github.com/ABPFrameWorkGroup/AbpDocument2Chinese/blob/master/Markdown/Abp/9.4ABP%E5%9F% ...
- ABP框架记录
1.先在Core项目中建立模型Models>Model.cs/ModelManager.cs 2.在Application中建立接口和具体类:IModelAppService.csModelAp ...
- 使用代码生成工具快速开发ABP框架项目
在一般系统开发中,我们一般要借助于高度定制化的代码生成工具,用于统一代码风,节省开发时间,提高开发效率.不同的项目,它的项目不同分层的基类定义不同,我们需要在框架基类的基础上扩展我们的业务类代码,尽量 ...
- ABP框架使用Oracle数据库,并实现从SQLServer中进行数据迁移的处理
ABP框架的数据访问底层是基于EFCore(Entity Framework Core)的,是微软标志性且成熟的ORM,因此它本身是支持多种主流数据库MySQL,SqlServer,Oracle,SQ ...
- ABP 框架 数据库底层迁移 Mysql 集群
技术交流,请加QQ群:538327407 我的各种github 开源项目和代码:https://github.com/linbin524 背景 笔者 目前架构的IOT 项目是使用abp 框架作为后台, ...
- ABP框架迁移到Mysql
ABP框架 .NetCore3.x版本 1.首先找到xxx.Core 项目,添加引用Microsoft.EntityFrameworkCore.Tools 2.找到xxx.EntityFramewor ...
随机推荐
- 跨域问题解决方案之chrome插件
地址: https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkki ...
- BZOJ3403:[USACO2009OPEN]Cow Line
浅谈队列:https://www.cnblogs.com/AKMer/p/10314965.html 题目传送门:https://lydsy.com/JudgeOnline/problem.php?i ...
- java中List、Map、Set、Collection、Stack、Queue等的使用
java中这几个东西是比较常用的,虽然我用的不多,也正是因为用的不多,所以我一直搞不清楚他们之间的具体用法以及相互之间的关系,现在特单独作为一个东西来总结一下. 本文参考一下资料: 1.<jav ...
- php之laravel学习
http://laravel-china.github.io/php-the-right-way/#composer_and_packagist laravel 添加 dingoapi路由插件 并运用 ...
- FMDB是iOS平台的SQLite数据库框架
1.FMDB简介 什么是FMDBFMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 为什么使用FMDB使用起来更加面向对象,省去了很多麻烦.冗余的C语言 ...
- the virtual machine is configured for 64-bit guest operating systems
Security--Virtualization--Inter(R) Virtualization Technolog 设置为enable 本机安装的是WIN 7 ,详细版本是:Windows 7 U ...
- Thread之四:java线程返回结果的方法
两种方式:一种继承Thread类实现:一种通过实现Callable接口. 第一种方法: 因为实现Thread类的run方法自身是没有返回值的,所以不能直接获得线程的执行结果,但是可以通过在run方法里 ...
- Java-API:un-java.util.Set
ylbtech-Java-API:java.util.Set 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 0. https://docs.oracle.com ...
- c# 几种singleton 实现
http://csharpindepth.com/Articles/General/Singleton.aspx#introduction 4th在线看 https://www.manning.com ...
- 关于多账套API的设计
帐套在财务核算中是记载一个独立核算的经济实体的所有往来信息的一整套记录表和统计分析报表.不同的帐套之间的关系是相对独立的,对其中的任何一个帐套中的数据进行建立.删除或修改都不会影响其他帐套.在ERP中 ...