1. 什么是 ABP vNext?
ABP vNext(abp.io)是一个基于 ASP.NET Core 和 EF Core 的现代应用开发框架,内置 模块化开发、权限管理、多租户、审计日志 等特性,可以极大提高企业级应用开发效率。
常见的 ABP 场景:
- 后台管理系统(RBAC)
- 多租户 SaaS 平台
- 微服务网关 + 后台
- 模块化大型项目
2. 环境准备
要跑 ABP,你需要:
- .NET SDK 6.0+
下载地址:dotnet.microsoft.com/download - Node.js(前端依赖)
下载地址:nodejs.org(建议 LTS 版本) - npm / yarn(包管理工具)
- IDE:Visual Studio 2022 或 JetBrains Rider(也可以 VS Code)
- 数据库:SQL Server / MySQL / PostgreSQL(示例用 SQL Server)
3. 创建 ABP 项目
ABP 提供了官方 CLI 工具 创建项目。
(1)安装 ABP CLI
dotnet tool install -g Volo.Abp.Cli
php
35 Bytes
© 菜鸟-创作你的创作
查看版本:
css
abp --version
php
13 Bytes
© 菜鸟-创作你的创作
(2)创建项目
arduino
abp new MyCompany.MyProject -t app
php
34 Bytes
© 菜鸟-创作你的创作
参数说明:
-
-t app
表示生成前后端分离的应用程序模板 -
默认会生成:
- HttpApi.Host(后端 API 服务)
- Web(前端 Vue/Angular 项目)
- Domain / Application / EntityFrameworkCore(分层项目结构)
4. 配置数据库连接
修改 appsettings.json
(位于 HttpApi.Host
项目里):
json
"ConnectionStrings": {
"Default": "Server=127.0.0.1;Database=MyProjectDb;User Id=sa;Password=yourpassword;"
}
php
111 Bytes
© 菜鸟-创作你的创作
5. 初始化数据库
在 HttpApi.Host
项目目录执行:
sql
dotnet ef database update
php
25 Bytes
© 菜鸟-创作你的创作
ABP 会自动建表(权限、用户、多租户、审计等系统表都会自动生成)。
6. 启动后端
在 HttpApi.Host
项目目录:
arduino
dotnet run
php
10 Bytes
© 菜鸟-创作你的创作
默认监听 https://localhost:44367
(端口可能不同)。
7. 启动前端
进入 Web
项目:
arduino
cd Web
npm install
npm run serve
php
32 Bytes
© 菜鸟-创作你的创作
访问:
arduino
http://localhost:4200
php
21 Bytes
© 菜鸟-创作你的创作
默认账号:
admin / 1q2w3E*
php
15 Bytes
© 菜鸟-创作你的创作
8. 项目结构说明(简化版)
arduino
MyCompany.MyProject
├── MyProject.Domain // 实体对象 & 领域逻辑
├── MyProject.Application // 应用服务(业务接口)
├── MyProject.EntityFrameworkCore // EF Core 数据访问
├── MyProject.HttpApi // API 接口定义
├── MyProject.HttpApi.Host // Web API 启动项目
├── MyProject.Web // 前端 Vue/Angular
php
335 Bytes
© 菜鸟-创作你的创作
9. 第一个模块功能
例如添加一个简单的 产品管理 模块:
- 在 Domain 添加
Product
实体 - 在 Application 添加
ProductAppService
- 在 HttpApi 暴露 API
- 前端调用 API 渲染
ABP 提供了命令生成器:
css
abp generate crud Product -p MyCompany.MyProject
php
48 Bytes
© 菜鸟-创作你的创作
这样 CRUD + UI 就自动生成了。
10. 总结
ABP vNext 的优势:
- 自带模块化结构(适合大型项目)
- 内置权限、多租户、审计等基础设施
- CLI 快速生成 CRUD
- 前后端分离模板开箱即用