2、ABPZero系列教程之拼多多卖家工具 更改数据库为Mysql
因为要部署项目到云服务器,不想在服务器上装SqlServer,所以需要把项目改为Mysql。
项目初始化
1、下载项目压缩包,前面文章已经说到,可以加群到群文件里下载。解压缩下载的项目源码,使用VS2015打开项目

这里需要还原包,选择解决方案---右键(还原NuGet包),现在还原NuGet包比之前快了好多了,这都是微软重视中国开发者的功劳。

包还原好了之后,点击解决方案重新生成一次。可以看到项目生成成功,接下来进入修改Mysql数据库步骤。
注:如果你不想使用Mysql数据库,可以跳过以下一些步骤,直接进入数据库创建步骤。
安装Mysql包
在此之前先安装Mysql数据库,电脑上安装Mysql数据库,确保电脑可以成功连接Mysql数据库。
Mysql免安装版环境配置图文教程:http://www.jb51.net/article/83636.htm
然后安装Mysql的包,EntityFramework和Web项目都需要安装

上图中已经圈出该安装的NuGet包与安装到哪个项目,这里选择6.9.10版本
Web项目
打开web.config修改连接字符串
<connectionStrings>
<!--<add name="Default" connectionString="Server=localhost; Database=AbpZeroTemplate; Trusted_Connection=True;" providerName="System.Data.SqlClient" />-->
<!-- Mysql连接字符串-->
<add name="Default" connectionString="Data Source=localhost;port=3306;Initial Catalog=pdddb3.4;uid=root;password=ab12;Charset=utf8" providerName="MySql.Data.MySqlClient" />
<add name="Abp.Redis.Cache" connectionString="localhost" />
</connectionStrings>
安装Mysql驱动
安装Mysql的驱动,驱动版本选择和上面安装的包一样的版本
驱动下载地址:https://dev.mysql.com/downloads/connector/net/


下载后一直下一步安装就可以了。
EntityFramework项目
修改EntityFramework项目下的Configuration构造函数
文件路径:D:\abp version\aspnet-zero-3.4.0\aspnet-zero-3.4.0\src\MyCompanyName.AbpZeroTemplate.EntityFramework\Migrations\Configuration.cs
public Configuration()
{
AutomaticMigrationsEnabled = false;
ContextKey = "AbpZeroTemplate";
//加入以下代码
SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator());//设置Sql生成器为Mysql的
}
AbpZeroTemplateDbContext类上加一句特性
文件路径:D:\abp version\aspnet-zero-3.4.0\aspnet-zero-3.4.0\src\MyCompanyName.AbpZeroTemplate.EntityFramework\EntityFramework\AbpZeroTemplateDbContext.cs
[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
public class AbpZeroTemplateDbContext : AbpZeroDbContext<Tenant, Role, User>
{
重新生成迁移文件
至此代码就加好了,重新生成迁移文件,可以看到项目原来就存在很多迁移文件,我们不要这些文件,自己重新生成。

删除完剩下Seed目录和Configuration文件

注:先设置Web项目为启动项目

打开VS的包管理控制台,并在包管理控制台中选择 .EntityFramework 项目作为默认项目。然后在控制台中执行下面命令:
Add-Migration "AbpZero_Initial"

看到上图黄色提示说明创建迁移文件成功

同时Migrations目录多了一个文件,这个就是刚刚创建的迁移文件。
现在你可以使用下面命令来创建数据库:
Update-Database


所有的事情都已完成,现在你可以运行你的项目并使用MySQL数据库了。
这篇文件告诉你如何启动项目,建议部署到IIS启动,以后的文章中我都以IIS启动进行操作。
http://www.cnblogs.com/shensigzs/p/6258835.html
2、ABPZero系列教程之拼多多卖家工具 更改数据库为Mysql的更多相关文章
- 1、ABPZero系列教程之拼多多卖家工具 前言
此系列文章围绕着拼多多卖家工具来介绍ABPZero的使用,内容包括手机登录.手机注册.拼团提醒.微信公众号绑定帐号.有拼团发送消息到微信公众号(只要关注过微信公众号并已绑定系统帐号). 学习此系列必备 ...
- 12、ABPZero系列教程之拼多多卖家工具 拼团提醒功能登录拼多多实现
上篇文章已经完成了整个拼多多拼团提醒功能,本篇继续完成拼多多帐号登录,拼多多帐号登录的目的是为了获取拼团商品的SKU和订单号,便于商家备货. 以下是拼多多官方的后台登录,要实现的功能并不是直接在这里登 ...
- 10、ABPZero系列教程之拼多多卖家工具 拼团提醒逻辑功能实现
上篇文章已经封装好了类库,现在继续实现功能,在ABPZero框架的基础上来实现一个完整的功能. Redis缓存 编写功能前先在本机安装好Redis,需要用到Redis做缓存,以下分享2个Windows ...
- 9、ABPZero系列教程之拼多多卖家工具 拼团提醒类库封装
本篇开始正式做功能,我在开发拼团提醒之前,拼多多并没有放出拼团人数不足就提醒卖家的功能. 有这个想法主要来源于朋友的抱怨,我想这应该是大部分卖家的心声吧. 经过分析,拿到了几个api,不要问我api怎 ...
- 11、ABPZero系列教程之拼多多卖家工具 拼团提醒功能页面实现
上一篇讲解了拼团提醒逻辑功能实现,现在继续实现页面功能. Core项目 打开AbpZeroTemplate-zh-CN.xml语言文件,在末尾添加如下代码: 文件路径:D:\abp version\a ...
- 4、ABPZero系列教程之拼多多卖家工具 集成短信发送模块
ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板, ...
- 7、ABPZero系列教程之拼多多卖家工具 修改注册功能
本篇开始进入重头戏,之前的几篇文章都是为了现在的功能作准备.前面教程已经讲到修改User表结构,接下来就需要修改注册逻辑代码. 注册页面 修改Register.cshtml,备注如下代码: 文件路径: ...
- 13、ABPZero系列教程之拼多多卖家工具 微信公众号开发前的准备
因为是开发阶段,我需要在本地调试,而微信开发需要配置域名,这样natapp.cn就有了用武之地,应该说natapp就是为此而生的. natapp.cn是什么 这是一个内网映射的网站,支持微信公众号.小 ...
- 3、ABPZero系列教程之拼多多卖家工具 项目修改及优化
本篇内容杂而简单,不需要多租户.不需要多语言.使用MPA(多页面).页面加载速度提升…… 刚登录系统会看到如下界面,这不是最终想要的效果,以下就一一来修改. 不需要多租户 AbpZeroTemplat ...
随机推荐
- android:自己定义组合控件Weight(高仿猫眼底部菜单条)
在我们实际开发其中.会碰见一些布局结构类似或者同样的界面.比如应用的设置界面.tabbutton界面等. 这时候.对于刚開始学习的人来说,xml里面一个个绘制出来也许是最初的想法.可能随着经验的积累, ...
- habase单机版安装及基本功能演示
本文所使用的Linux发行版本为:CentOS Linux release 7.4.1708 (Core) 准备工作 创建用户 useradd -m hadoop passwd hadoop 下载安装 ...
- eclipse中JDK、struts2、Spring、Hibernate源码查看
一般,我们导入的只有jar文件,所以看不到对于的java文件,如果需要看源码,必须下载对应开源包的源码,一般都是zip文件,比如Spring,下载spring-framework-2.0.8-with ...
- 在java项目中加入百度富文本编辑器
富文本编辑器在项目中很常见,他可以将文本,图片等信息存入数据库,在编辑一些图文混排的信息的时候很有用,比如商城项目的商品详情页,包含很多带有样式的文字和图片. 此前一直使用的百度的富文本编辑器uedi ...
- time模块整理
time模块中包含的方法 time() -- 返回当前系统的时间戳clock() -- 在UNIX系统上,它返回的是"进程时间",它是用秒表示的浮点数(时间戳). 而在WINDOW ...
- Python 项目实践一(外星人入侵小游戏)第五篇
接着上节的继续学习,在本章中,我们将结束游戏<外星人入侵>的开发.我们将添加一个Play按钮,用于根据需要启动游戏以及在游戏结束后重启游戏.我们还将修改这个游戏,使其在玩家的等级提高时加快 ...
- Laravel学习笔记(三)--在CentOS上配置Laravel
在Laravel框架上开发了几天,不得不说,确实比较优雅,处理问题逻辑比较清楚. 今天打算在CentOS 7上配置一个Laravel,之前都是在本机上开发,打算实际配置一下. 1)系统 ...
- CentOS 7 学习(四)Git配置(一)
CentOS 7 学习(四)Git配置(一) 1.对于版本管理系统,目前常用的是Subverion和Git,Subversion是集中式版本管理系统中最好的,所有人的代码都要提交到服务器上,如果要知道 ...
- Django实战,小网站实现增删改查
直接上代码 视图: from django.shortcuts import render,render_to_response, redirect from submit import models ...
- iOS 友盟推送,应用内推送启动图推送闪动黑屏,插屏推送方法报错
以前都是用的极光推送,应公司需求要求使用友盟推送,为了以后是有分享都适用,,, 友盟推送文档,下载demo 感觉比极光用着要简单顺手 一切就绪后,开始发送消息测试,,,,,搞了半天没有发过来消息 原来 ...