每天学习一点点,成功增加一大步

ABP 框架 MVC 版 + MySql 的项目的创建

C# zhanghui 208℃

前面玩过 PHP、Andriod、NODEJS、.Net Core 等后端语言,感觉没什么好玩了,现在就玩下 .Net 的 ABP 框架,但我一向是用 MySql 数据库的,不免也会涉及到它。

下面记录一下 .net 的 ABP 框架 MVC 版如何与 MySql 数据库建立一个项目。实验过程是比较麻烦,所以记录一下以便不容易忘记。

准备操作

首先从官网下载代码库,在这里下载的版本是 ASP .NET MVC 5.X,选择 Single Page Web Application(或者 Multi Page Web Application,后端相同,只是前端不一样而已) + Entity Framework,接着填写上项目名和验证码就可以点【Create My Project】等待下载了。

http://aspnetboilerplate.com/Templates

下载完就解压里面【src】文件夹里面所有的东西,然后双击【src】根目录下的【***.sln】文件,记得在这之前你的电脑上已经安装好了微软的 VS IDE 软件,在这里安装的是 2017 版本。双击后启动 VS 软件。

启动后要打开【程序包管理器控制台】,在菜单【工具】》【NuGet 包管理器】》【程序包管理器控制台】,点【还原】按钮。

图1、安装缺失程序包

安装 Mysql 的驱动

下载地址:https://dev.mysql.com/downloads/connector/net/

解决方案资源管理器

1、在【***.Web】上右键菜单中选择【设为启动项目】。

2、在【解决方案’***’】上右键菜单中选择【管理解决方案的 NuGet 程序包】,在【NuGet】中输入搜索框输入【MySql.Data.Entity】,并选择【***.EntityFramework】和【***.web】两项,在版本一栏中选择【6.8.8】安装(如图2),因为测试最新版本存在着问题。

图2、安装【MySql.Data.Entity】

完成上步后,再在【***.EntityFramework】的【Migrations】目录中修改【Configuration.cs】文件,

public Configuration()
{
AutomaticMigrationsEnabled = false;
ContextKey = "……";
// 这行是要加入的代码
SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator());
}

完成上步后,再在【***.EntityFramework】的【EntityFramework】目录中修改【***DbContext.cs】文件,

// 下一行是要加入的代码
[DbConfigurationType(typeof(MySqlEFConfiguration))]
public class ***DbContext : AbpZeroDbContext<Tenant, Role, User>
{
……
}

再在【web.config】文件中加入以下代码

<connectionStrings>
<!--
注释默认的这行代码
<add name="Default" connectionString="Server=localhost; Database=orderCrm; Trusted_Connection=True;" providerName="System.Data.SqlClient" />
加入下行代码
-->
<add name="Default" connectionString="server=localhost;port=3306;database=test;uid=root;password=123456" providerName="MySql.Data.MySqlClient"/>
</connectionStrings>

程序包管理器控制台

菜单栏中【视图】》【其他窗口】》【程序包管理器控制台】

在【程序包管理器控制台】中的【默认项目】选择【***.EntityFramework】,输入命令

Add-Migration "AbpZero_Initial"

等待执行完毕后,再执行命令

Update-Database

等待执行完毕后,再走入 mysql  就可以看到生成的数据表了。

参考资料

官方:https://aspnetboilerplate.com/Pages/Documents/EF-MySql-Integration?searchKey=mysql

转载请注明:隨習筆記 » ABP 框架 MVC 版 + MySql 的项目的创建