ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库
关于 asp.net zero core 项目的启动及说明,请观看我前面的博文 http://www.cnblogs.com/stulzq/p/7237153.html
本操作对于ABP默认项目应该也是适用的!
一.移除默认的SqlServer相关程序包
需要移除“MyCompanyName.AbpZeroTemplate.EntityFrameworkCore” 项目 Microsoft.EntityFrameworkCore.SqlServer、Microsoft.EntityFrameworkCore.Design 两个程序包
二.添加MySql程序包
对项目 “MyCompanyName.AbpZeroTemplate.EntityFrameworkCore” 添加程序包“Pomelo.EntityFrameworkCore.MySql.Design”
三.更改项目源代码
以前代码更改都是在 “MyCompanyName.AbpZeroTemplate.EntityFrameworkCore” 项目下进行:
1.AbpZeroTemplateDbContextConfigurer.cs
public static class AbpZeroTemplateDbContextConfigurer
{
public static void Configure(DbContextOptionsBuilder<AbpZeroTemplateDbContext> builder, string connectionString)
{
builder.UseSqlServer(connectionString);
}
}
改为:
public static class AbpZeroTemplateDbContextConfigurer
{
public static void Configure(DbContextOptionsBuilder<AbpZeroTemplateDbContext> builder, string connectionString)
{
builder.UseMySql(connectionString);
}
}
四.迁移数据库
1.删除下图的cs文件
2.生成项目
3.更改连接字符串
连接字符串都是放在 appsettings.json
4.执行迁移操作
请确认MySql数据库开启,打开程序包管理器控制台,选中项目“MyCompanyName.AbpZeroTemplate.EntityFrameworkCore”,输入命令
Add-Migration init
迁移成功会出现如下提示:
查看Migrations文件夹会增加几个cs文件
5.生成项目
6.执行命令“Update-Database”
生成数据库成功会出现如下提示:
看看数据库已经成功生成:
五.启动项目
登录成功!
六.使用项目自带的工具迁移
前面的博文说过,项目“MyCompanyName.AbpZeroTemplate.Migrator”是自带的迁移工具,下面咱门来测试一下
1.首先回滚一下上面生成数据库的操作,直接删除数据库
2.更改连接字符串
3.运行项目
生成成功!
如果你觉得写的不错,请点一下下面的“推荐”,这是对我分享技术经验的支持,谢谢!↓↓↓↓↓↓↓↓↓↓↓
ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库的更多相关文章
- ABP从入门到精通(3):aspnet-zero-core 使用Redis缓存
一.Redis是什么? redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset ...
- ABP从入门到精通(1):aspnet-zero-core项目启动及各项目源码说明
一.ABP的简单介绍 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践 ...
- ABP从入门到精通(5):使用基于JWT标准的Token访问WebApi
项目:asp.net zero 4.2.0 .net core(1.1) 版本 我们做项目的时候可能会遇到需要提供api给app调用,ABP动态生成的WebApi提供了方便的基于JWT标准的Token ...
- ABP从入门到精通(6):快速重命名解决方案
SolutionRenamer SolutionRenamer 是一个解决方案快速重命名工具.经测试重命名一个全新asp.net zero core项目(ABP asp.net zero,.net c ...
- ABP从入门到精通(5):.扩展国际化语言资源
ABP的有些组件使用的该组件自带的语言包资源,所以在有些时候会因为我们当前使用的语言对应的语言包不全,而造成日志一直记录WARN.ABP给我们提供了扩展语言包资源的接口,可以解决这个问题. 以下示例代 ...
- ABP从入门到精通(4):使用基于JWT标准的Token访问WebApi
项目:asp.net zero 4.2.0 .net core(1.1) 版本 我们做项目的时候可能会遇到需要提供api给app调用,ABP动态生成的WebApi提供了方便的基于JWT标准的Token ...
- Spring Boot从入门到精通(六)集成Redis实现缓存机制
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言 ...
- ABP (.Net Core 3.1版本) 使用MySQL数据库迁移启动模板项目(1)
最近要搭建新项目,因为还没有用过.net core,所以想用.net core的环境搭建新项目,因为不熟悉.net core的架构,所以就下载了abp项目先了解一下. 因为自己太菜了,下载了模板项目, ...
- 路由其实也可以很简单-------Asp.net WebAPI学习笔记(一) ASP.NET WebApi技术从入门到实战演练 C#面向服务WebService从入门到精通 DataTable与List<T>相互转换
路由其实也可以很简单-------Asp.net WebAPI学习笔记(一) MVC也好,WebAPI也好,据我所知,有部分人是因为复杂的路由,而不想去学的.曾经见过一位程序猿,在他MVC程序中, ...
随机推荐
- C++构造函数(二)
本篇是介绍C++的构造函数的第二篇(共二篇),属于读书笔记,对C++进行一个系统的复习. 复制构造函数 复制构造函数是构造函数的一种,也被称为拷贝构造函数,他只有一个参数,参数类型是本类的引用.默认构 ...
- 限制容器的 Block IO - 每天5分钟玩转 Docker 容器技术(29)
前面学习了如何限制容器对内存和CPU的使用,本节我们来看 Block IO. Block IO 是另一种可以限制容器使用的资源.Block IO 指的是磁盘的读写,docker 可通过设置权重.限制 ...
- Mysql数据库存储emoji表情
emoji表情需要使用编码格式未utf8mb4,mysql数据库版本要5.5以上,我用的是5.6,因为只有5.5以上支持utf8mb4. 1.数据库编码设定为utf8mb4,如果建库时指定的是utf8 ...
- Python模块之ConfigParser - 读写配置文件
Python 标准库的 ConfigParser 模块提供一套 API 来读取和操作配置文件. 配置文件的格式 a) 配置文件中包含一个或多个 section, 每个 section 有自己的 opt ...
- .NET使用HttpWebRequest发送手机验证码
namespace SendSMS { class Program { static void Main(string[] args) { string phone = "13770504x ...
- JAVA基础-JSON
/** * 1.根据接收到的JSON字符串来解析字符串中所包含的数据和数据对象 */ System.out.println("1.根据接收到的JSON字符串来解析字符串中所包含的数据和数据对 ...
- 最全Oracle环境搭建之.NET程序员初遇Oracle
前言:如果你习惯了傻瓜式的一步步安装,那么Oracle和.NET搭配,绝对会让你头痛不已. 目前我不敢保证自己理解的Oracle理论部分100%正确,但环境安装过程一定可以收藏以备不时之需. 路这么长 ...
- WebService小记
这个问题找了好多地方都没有结果,自己暂且总结一下吧,也不算是解决问题的根本途径,但是也不失为一种办法.当时用了wsimport wsdl2java xfire 都没有解决,大牛能解决的话,欢迎留言. ...
- Sublime text3插件安装方法
一.安装sublime text3插件的方法: 1.Ctrl+~键,调出console,将下面代码复制到底部命令行,回车: import urllib.request,os; pf = 'Packag ...
- C语言之复杂链表的复制(图示详解)
什么是复杂链表? 复杂链表指的是一个链表有若干个结点,每个结点有一个数据域用于存放数据,还有两个指针域,其中一个指向下一个节点,还有一个随机指向当前复杂链表中的任意一个节点或者是一个空结点.今天我们要 ...