ABP入门教程(一)启动模版项目
ABP为一个脚手架项目,源码启动起来就是一个项目,已经内置了用户,角色,权限等基础服务,让我们可以直接进入业务开发。
最新的ABP基于.Net6建议使用VS2022进行开发
ABP项目的分层
.Application 为应用层:构建服务
.Core 为领域层:定义实体,实现实体功能,定义仓储接口
.EntityFrameworkCore (EF层)为数据库处理:实体与数据表的对应与配置,实现仓储接口
.Web.Core 为控制层:负责把应用服务自动解析为Controller
.Web.Host 为程序入口:系统配置(数据库连接,系统端口,日志框架等)
启动ABP只需要简单的3步:
1,到官网下载模版项目: https://aspnetboilerplate.com/
2,用VS2022打开解决方案,将Web.Host设置为启动项
3,在程序包管理器控制台(Nuget控制台)里设定默认项目为EntityFrameworkCore,执行命令建库:Update-Database
如果建库成功就可以启动项目了
下面是详细步骤
1,下载ABP模版:基于.NetCore的Vue或者Anjular单页面应用(前后端分离)
https://aspnetboilerplate.com/
2,用VS2022打开解决方案
3,如果你在本机安装了SqlServer,这一步可以跳过;非本地数据库需要修改数据库连接;
"ConnectionStrings": {"Default": "Server=localhost; Database=AbpDemoDb; Uid=root; Pwd=123456;"
}
如果使用MySQL,请看步骤4,步骤5
如果使用默认的SQL Server,跳过步骤4,步骤5
4,修改为使用MySQL:在XXX.EntityFrameworkCore层用Nuget安装添加Pomelo.EntityFrameworkCore.MySql
5,修改 XXXDbContextConfigurer类的数据库连接配置
namespace AbpDemo.EntityFrameworkCore
{public static class AbpDemoDbContextConfigurer{public static void Configure(DbContextOptionsBuilder<AbpDemoDbContext> builder, string connectionString){//builder.UseSqlServer(connectionString);builder.UseMySql(connectionString);}public static void Configure(DbContextOptionsBuilder<AbpDemoDbContext> builder, DbConnection connection){//builder.UseSqlServer(connection);builder.UseMySql(connection);}}
}
6,数据迁移:
将Web.Host设置为启动项,在程序包管理器控制台(Nuget控制台)里设定默认项目为EntityFrameworkCore,执行命令更新数据库即可:Update-Database
ABP会自动建库;
下面是常用数据库迁移命令,供你参考
产生迁移文件 (可以先删除EntityFrameworkCore项目中的Migrations文件夹,产生的迁移文件更好看)
Add-Migration init 更新数据库
Update-Database 产生数据库脚本 (不执行第2步,用这个命令产生的脚本建库也可以,适用于生产环境)
Script-Migration [from] [to]
7,将Web.Host设置为启动项,运行项目,如果没有问题会自动在浏览器里面打开Swagger页面
ABP入门教程(一)启动模版项目相关推荐
- ABP(现代ASP.NET样板开发框架)系列之2、ABP入门教程
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之2.ABP入门教程 ABP是"ASP.NET Boilerplate Project (ASP.NET样 ...
- Bazel入门教程:编译C++项目
文章目录 Bazel入门教程:编译C++项目 安装bazel 编译C++项目 建立工作区(workspace) 理解BUILD文件 使用Bazel编译项目 1. 编译你的第一个Bazel项目 2. 查 ...
- 基于DDD的现代ASP.NET开发框架--ABP系列之2、ABP入门教程
ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WE ...
- Abp 入门教程 Day02
1.创建项目 1.1 由于安装了Abp Cli,可以直接使用命令创建初始化项目. 在本地盘浮创建一个空文件夹,按住Shift 键+鼠标右键,打开PowerShell 终端 1.2 在终端中执行以下命 ...
- Pr 入门教程:如何创建项目?
欢迎观看 Premiere Pro 教程,小编带大家学习 Pr 的基本编辑技巧,了解工作区和如何创建新项目. 第一次启动 Premiere Pro 时,会看到这样的画面,这是「开始」屏幕,里面有一些选 ...
- ABP入门教程之集成达梦数据库
达梦数据库目前(2023年)只支持到.net6 所以下载ABP的.net6版本,然后开始集成 1,修改数据库连接 首先在达梦数据库中新建一个用户:ABPDEMO,赋予DBA权限,然后把appsetti ...
- IntelliJ Idea入门教程:如何新建项目
下载IntelliJ IDEA 创建项目后,就可以开始添加新项目:创建目录和包,添加新类,导入资源以及通过添加更多模块扩展项目. 建立新项目 创建一个新目录 在"项目"工具窗口(A ...
- ABP入门教程(四)初探领域驱动设计
ABP项目的分层 .Application 为应用层:构建服务 .Core 为领域层:定义实体,定义实体功能,实现实体功能,定义仓储接口 .EntityFrameworkCore 为数据库处理(EF层 ...
- ABP入门教程(三)添加一个领域层和一个应用层
1 添加一个领域层 前言: ABP自带的Core层我们一般不会修改, 为了项目结构更加清晰建议添加一个Core层, 存放与业务有关的实体 1,在src目录下新建一个项目,类库,例如叫AbpDemo.C ...
最新文章
- class function或class procedure是什么意思
- Android规范发展
- python3邮件_python3使用SMTP发送HTML格式邮件
- AB测试:基础概念、应用场景及入门指南
- Maven组件通过命令上传本地和私有仓库
- list foreach方法_Java集合三兄弟List,Set,Map你分的清楚吗?
- Storm精华问答 | 如何理解spout/bolt的生命周期?
- vue获取编辑器纯文字_前端富文本编辑器 vue-html5-editor
- 1032. 挖掘机技术哪家强(20)-PAT乙级真题
- shell截取字符串的8种方法
- 在OSPF网络中,如何判断LSA的新旧?
- 祭十大已经逝去的软件
- android扫雷代码解释,android的扫雷程序.doc
- Mac OS X 快捷键(完整篇)
- 鸿蒙系统翻车了,鸿蒙系统翻车了?任正非承认忽视了关键问题,称华为犯下大错误...
- [BZOJ3895]取石子
- 英飞凌-AURIX-TC3XX 片上总线通信架构
- boost install
- cannot coerce class ‘“igraph“’ to a data.frame
- 软件工程复试——五、总体设计
热门文章
- 超越名利、参透生死?
- 抓取网页上的图片(一)
- 《姜子牙》《哪吒》连连看
- B. Absent Remainder
- 第十一篇|基于SparkSQL的电影分析项目实战
- UM2 3D 打印机 DIY 实践 (6)限位开关
- html 换行字体,div字体换行
- 报错解决:Unable to find a `./myhdl.vpi‘ module on the search path.以及 %1 is not a valid Win32 application
- 儿童电动牙刷GB 39669-2020 牙刷及口腔器具安全测试要求
- 饼图legend显示百分比