ABP官方angular(默认)项目配置
ABP == ASP.NET Boilerplate Project
1.项目环境配置
1.开发工具:Visual Studio 2019
2.数据库:使用的是MySql(8.0的,但是应该和版本没关系)数据库
我的数据库是使用的phpMyStudy里面的数据库,因为可以不用在电脑上下载MySql数据库---下载地址:https://www.xp.cn/download.html
你也可以使用本地下载的MySql
---- mysql数据库会有一个问题,在后面提及
3.net sdk:5.0.414版本
4.navicat数据库连接工具
2.下载官方案例
2.1进入官网,点击Get started
ABP官网: https://aspnetboilerplate.com/
2.2现在对应.net版本的项目
注意(选择对应版本):Target Version 和 Target Framework的对应关系,我的.net版本是5.0,所以我的target version 选择 v5.x
查看.net版本方法(win10系统):
1.打开设置
2.找到控制面板
3.点击程序->程序和功能-->发现我们的.net sdk版本为5.0.414
2.3填写信息,下载模板->我这里的项目名为:TestABP
2.4解压zip文件到自定义目录
2.5使用vs2019打开解决方案
attention:打开的目录
3将默认数据库(SqlServer)修改为MySql -- 如果你安装过SqlServer可以略过此过程
3.1 使用NuGet卸载SqlServer的程序包和安装MySql的程序包
1.打开NuGet(工具->NuGet包管理器->程序包管理控制台)
2.在程序包管理控制台卸载SqlServer的程序包->我的已经写在过来,所以爆红了
uninstall-package microsoft.entityframeworkcore.design
uninstall-package microsoft.entityframeworkcore.sqlserver
3.安装MySql程序包(工具->NuGet包管理器->管理解决方案的NuGet程序包)
安装microsoft.entityframeworkcore.MySql和microsoft.entityframeworkcore.design
安装原理相同,演示一个,*.design不考虑版本
注意:还是版本问题:我们安装5.x的版本,因为.net是5.x的
->选好版本->点击安装
3.2更改DbContextConfigurer.cs文件
1.找到DbContextConfigurer.cs文件
2.修改DbContextConfigurer.cs文件为如下
using System;
// System模块是后导入的,为了使用System.Version对象
using System.Data.Common;
using Microsoft.EntityFrameworkCore;
namespace MyProduct.EntityFrameworkCore
{
public static class MyProductDbContextConfigurer
{
public static void Configure(DbContextOptionsBuilder<MyProductDbContext> builder, string connectionString)
{
//原来的
//builder.UseSqlServer(connectionString);
//修改后
builder.UseMySql(connectionString, new MySqlServerVersion(new Version(8, 0, 11)));
}
public static void Configure(DbContextOptionsBuilder<MyProductDbContext> builder, DbConnection connection)
{
//原来的
//builder.UseSqlServer(connection);
//修改后
builder.UseMySql(connection, new MySqlServerVersion(new Version(8, 0, 11)));
}
}
}
3.3修改数据库连接字符串
1.修改TestABP.Migrator项目里面的appsettings.json数据库连接字符串
{
"ConnectionStrings": {
"Default": "Server=localhost; Database=在数据库里面新建的数据库名; Port=3306(端口号);Uid=用户名;Pwd=密码"
}
}
2.修改TestABP.Web.Host项目里面的appsettings.json数据库连接字符串
{
"ConnectionStrings": {
"Default": "Server=localhost; Database=TestABPDb; Port=3306;Uid=root;Pwd=123"
}
}
3.4 删除 (项目名)TestABP.EntityFrameworkCore下面的Migrations(中文意思:迁移)文件夹里面的所有文件
1.不删除Migrations文件夹
3.5 清理解决方案和重新生成解决方案
清理解决方案
注意这里如果爆.net版本错误,说明你的ABP项目需要的.net sdk版本和你的visual studio 2019里面的.net sdk版本不同,重新下载和vs版本相同的
abp项目即可.
重新生成解决方案
没报错误就成功了
4 设置TestABP.Web.Host为启动项目->颜色加黑则成功
4.1 进行数据库迁移
1.打开程序包管理控制台,选中 *.EntityFrameworkCore
2.输入命令
add-migration XXXX,其中XXXX可以自定义名字 - 我用的是InitMySql
update-database
错误1:关键字长度不够
Applying migration '20180205084033_Initial_Migration'.
Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
CREATE INDEX `IX_AbpLanguageTexts_TenantId_Source_LanguageName_Key` ON `AbpLanguageTexts` (`TenantId`, `Source`, `LanguageName`, `Key`);
MySql.Data.MySqlClient.MySqlException (0x80004005): Specified key was too long; max key length is 1000 bytes ---> MySql.Data.MySqlClient.MySqlException (0x80004005)
...
1.如果你使用的是phpMyStudy的数据库MySql -- 解决方法如下
修改mysql默认数据库引擎改为Inndb,重启一下mysql数据库再进行数据库迁移就可以
2.如果你使用的是本地数据库,出现错误1,建议找文档-
成功示例
5 运行项目配置
5.1 无法运行(ctrl+F5)问题
正常的abp项目无法运行,会报如下错误
该项目不知道如何运行配置文件 IIS Express。
5.2解决办法,把项目设置成项目启动
在启动项目(*.Web.Host)处右键属性-->调试 -->启动改为项目即可
5.3正常使用ctrl+F5即可启动项目
6.如何打开web前端界面
1.在搜索引擎的url栏中输入
或者直接在vs2019中点击地址
2.端口号可能不同,如何确定->使用这里的端口号
3.如果还打不开web界面
我猜测可能是没有IIS服务器的事,百度一下安装一下IIS服务器
3.成功界面
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!