我是一名.net新手,应公司要求开始学习.net,使用的是土耳其大牛写的框架ASP.NET Boilerplate 简称ABP,是基于DDD的现代ASP.NET开发框架,ABP提供了一个启动模板用于新建的项目。经过多方阅读,自己进行实践,并进行总结。需要把这个模板搭建起来,微软下载的原始模板使用的数据库是SqlServer,由于个人原因需要将其进行修改。本人所使用的是win7系统,数据库是Mysql,软件使用的是vs2017。
进入正题先进入微软的官网:https://aspnetboilerplate.com/Templates

按照步骤进行操作,点击create my project

进行等待下载,下载完成后,将压缩包解压到一个文件夹下面,打开文件夹找到aspnet-core, 找到以*.sln结尾的文件打开

1.打开以后点击解决方案,先还原NuGet包

如下图显示

2.安装MySql.Data.Entity
在vs2017中右击解决方案 =》找到管理解决方案NuGet程序包

打开后的页面 并输入MySql.Data.Entity ,我下载的是最新版的,当最新版的没有迁移成功时,卸载当前最新版本,下载低版本的,并测试

当然也可以使用命令进行安装数据库插件点击工具=》NuGet包管理器=》程序包管理器控制台
在控制台中程序包源选择 全部 默认程序选择 *.EntityFrameworkCore
依次输入
install-package pomelo.entityframeworkcore.mysql.design

install-package pomelo.entityframeworkcore.mysql

3.更改配置文件

在解决方案entityframeworkcore层找到DbContextConfigurer文件,修改里面的内容

4.卸载sql server的NuGet包
在程序包管理器控制台使用代码进行卸载

uninstall-package microsoft.entityframeworkcore.sqlserver
5.重新修改数据库连接字符串
找到appsettings.json文件重新修改数据库连接字符串进行修改
"Default": "Server=localhost;Port=3306;Database=数据库名字;Uid=root;Pwd=数据库密码;"
6.下载并安装Mysql
输入连接 https://dev.mysql.com/downloads/mysql/5.5.html#downloads 下载并安装mysql
7.重新添加数据迁移
找到*.EntityFrameworkCore层的Migrations文件夹,删除文件夹里面的所有文件,不要删除文件夹。删除完文件之后,重新生成解决方案。接着在程序包管理器控制台 默认程序选择 *.EntityFrameworkCore 敲入命令Add-Migration NewInit 当出现 To undo this action, use Remove-Migration. 时为执行成功。

再次执行 update-database 出现Applying migration '20190513024725_NewInit'. 数据库迁移成功。在Mysql数据库中就可以看到所有的表。
注:
有的小伙伴可能执行会出错(当然这是我安装过程中遇到的问题 ), 可能会有以下几个问题
1.PowerShell version 2.0 is not supported. Please upgrade PowerShell to 3.0 or greater and restart Visual Studio.
对于这个问题是由于win7系统版本较低,需要更新 。在微软官网即https://www.microsoft.com/zh-CN/download/details.aspx?id=40855 这个地址,下载安装 Windows6.1-KB2819745-x64-MultiPkg.msu 即可。当然若是新系统或win10应该不会出现这样的问题
2.Your startup project 'YTMyprocte.Web.Host' doesn't reference Microsoft.EntityFrameworkCore.Design.
这个问题是由于缺Microsoft.EntityFrameworkCore.Design.包,将这个包装上之后就ok了。

作为新人,第一次写博客,请多提意见,谢谢

ABP——切换MySQL数据库的更多相关文章

  1. ABP 切换mysql 数据库报错mysqlexception: incorrect string value: ‘\xe7\xae\x80\xe4\xbd\x93…’ for column display name

    刚折腾了ABP框架,为了跨平台,将SQL Server数据库换成了MySQL数据库,ABP框架上支持多语言,中间被字符集折腾的够呛,翻了N个博客,最后终于在StackOverFlow 上找到了最终的解 ...

  2. ABP入门系列(21)——切换MySQL数据库

    ABP入门系列目录--学习Abp框架之实操演练 源码路径:Github-LearningMpaAbp 1. 引言 Abp支持MySql已经不是什么新鲜事了,但按照官方文档:Entity Framewo ...

  3. ABP学习之路--切换mysql数据库

    1.添加mysql相关引用 注意,使用最新版本会导数据迁移时出错 2.修改链接字符串: <add name="Default" connectionString=" ...

  4. Abp vNext 切换MySql数据库

    Abp vNext是Abp的下一代版本,目前还在经一步完善,代码已经全部重写了,好的东西保留了下来,去除了很多笨重的东西,从官宣来看,Abp vNext主要是为了以后微服务架构而诞生的. 从源码来看, ...

  5. ABP框架(asp.net core 2.X+Vue)模板项目学习之路(二)--切换MySql数据库

    前言: 大家好,今天给大家带来ABP第二篇的分享,在写这篇分享的时候非常的困难,因为发现ABP的框架越是深入.难度也就越大,而且深刻感觉到自己领域驱动开发知识的欠缺,前段时间买了两本有关于领域驱动知识 ...

  6. 【转】ABP使用Mysql数据库

    原文地址:https://www.cnblogs.com/LonelyCode/p/6477065.html 1.先安装Mysql的包,EntityFramework和Web项目都需要安装 2.修改W ...

  7. django框架配置mysql数据库

    django配置mysql数据库: 1.首先更改django项目文件中的settings.py的数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.d ...

  8. 远程连接阿里云的mysql数据库

    第一步 由于mysql版本问题 先尝试打开 sudo vim /etc/mysql/my.cnf 如空,再尝试打开 sudo vim /etc/mysql/mysql.conf.d/mysqld.cn ...

  9. ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据

    ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...

随机推荐

  1. 白话SCRUM之一:SCRUM 的三个角色

    在SCRUM方法中将项目的利益相关者分成两大类:Pigs角色与chickens角色,pigs即为项目组的实际参与人员,chickens为项目组的外部人员,包括经理.最终用户等等.Pigs在scrum中 ...

  2. 团队——Alpha2版本发布

    这个作业属于哪个课程 课程链接 这个作业要求在哪里 作业要求的链接 团队名称 杨荣模杰和他的佶祥虎 这个作业的目标 发布并说明产品Alpha2版本 一.团队成员的学号姓名列表 学号 姓名 201731 ...

  3. 5.2 RDD编程---键值对RDD

    一.键值对RDD的创建 1.从文件中加载 2.通过并行集合(数组)创建RDD 二.常用的键值对RDD转换操作 1.reduceByKey(func) 功能:使用func函数合并具有相同键的值 2.gr ...

  4. 笔记8:Linux知识

    linux学习笔记 1 Linux介绍 1.1 基本知识 应用领域:服务器使用 LAMP(Linux + Apache + MySQL + PHP)或 LNMP(Linux + Nginx+ MySQ ...

  5. Rust的多线程程序

    一定要用闭包? 感觉有点过了. use std::thread; use std::time::Duration; fn main() { let v = vec![, , ]; let handle ...

  6. 【洛谷P4542】 [ZJOI2011]营救皮卡丘(费用流)

    洛谷 题意: 给出\(n\)个点,\(m\)条边,现在有\(k,k\leq 10\)个人从\(0\)号点出发前往\(n\)点. 规定若某个人想要到达\(x\)点,则\(1\)~\(x-1\)号点都有人 ...

  7. linux (06) redis安装

    redis安装 一.在linux安装redis,通过源码编译安装redis 1.下载源码包 wget http://download.redis.io/releases/redis-4.0.10.ta ...

  8. pdfium

    https://github.com/SubtleCow/AccessControlListsintheDOM/tree/4673d995e5614bc682cecd22f9b2919b2360273 ...

  9. Linux(CentOS)上,安装了Apache(httpd)后,其他的电脑无法访问的原因

    今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.2),然后在windows系统下访问此虚拟机的ip地址,却访问不了. 因为前段时间有知道过iptable的限制, ...

  10. JWT 使用的另一种声音

    讲真,别再使用JWT了! 把本应该session 中保存的数据 去除敏感字段 保留到客户端   在Web应用中,使用JWT替代session并不是个好主意 适合JWT的使用场景 抱歉,当了回标题党.我 ...