Skip to content

后端知识库 ​

本页概览 Ape‑Volo‑Admin 的后端模块与目录结构,帮助你快速理解各模块职责与协作关系。

项目结构 ​

shell
├── Ape.Volo.Api — API 宿主(提供 HTTP/REST 接口)
│   ├── wwwroot — 静态资源 / 前端构建产物
│   ├── ActionExtension — 控制器扩展、过滤器与特性封装
│   ├── Controllers — 各领域的 API 控制器
│   ├── Logs — 运行时日志目录
│   └── Program.cs — 应用启动与中间件配置
├── Ape.Volo.Common — 公共基础类库(通用工具与基座)
│   ├── Attributes — 自定义特性
│   ├── ClassLibrary — 通用基础类与辅助组件
│   ├── DI — 依赖注入配置与注册
│   ├── Enums — 公共枚举定义
│   ├── Exception — 异常类型与处理扩展
│   ├── Extensions — 常用扩展方法
│   ├── Global — 全局常量与上下文
│   ├── Helper — 常用工具类
│   ├── IdGenerator — 雪花 ID 生成器
│   ├── Model — 通用模型与 DTO
│   ├── MultiLanguage — 多语言支持
│   └── WebApp — HTTP 上下文封装(如 HttpUser)
├── Ape.Volo.Core — 核心能力与横切模块(AOP、缓存、映射等)
│   ├── Aop — 面向切面编程支持
│   ├── Caches — 缓存抽象与实现
│   ├── ConfigOptions — 强类型配置绑定
│   ├── Internal — 框架内部服务与契约
│   ├── Mapping — 对象映射配置
│   ├── SeedData — 系统初始化种子数据
│   ├── Serilog — 日志集成配置
│   ├── Utils — 通用工具方法
│   └── App — 全局服务汇总与入口
├── Ape.Volo.EventBus — 事件总线(领域/集成事件发布订阅)
│   ├── Abstractions — 事件总线接口
│   ├── EventBusRabbitMQ — RabbitMQ消息队列事件
│   ├── Events — 事件模型记录
│   ├── IEventBusSubscriptionsManager — 事件总线订阅管理
│   ├── InMemoryEventBusSubscriptionsManager — 内存中的事件总线订阅管理
│   ├── SubscriptionInfo — 事件订阅信息
├── Ape.Volo.Infrastructure — 与宿主及外部系统的集成层
│   ├── ActionFilter — MVC 操作过滤与审计
│   ├── Authentication — 身份认证与权限控制
│   ├── Extensions — 服务注册与扩展方法
│   ├── Messaging — 消息队列抽象与实现
│   └── Middleware — 中间件与管道组件
├── Ape.Volo.TaskService — 定时任务与调度服务
│   ├── Service — 任务工厂与调度实现
│   └── JobBase — 任务基类与抽象定义
├── Ape.Volo.Repository — 仓储实现与数据访问
│   ├── SugarHandler — SqlSugar仓储封装接口与实现
│   └── UnitOfWork — 工作单元接口与实现
├── Ape.Volo.IBusiness — 业务接口契约
├── Ape.Volo.Business — 业务实现层
├── Ape.Volo.Entity — 数据库实体与 ORM 映射
├── Ape.Volo.ViewModel — ViewModel / DTO 定义
└── Ape.Volo.SharedModel — 跨服务共享模型与契约

模块总览 ​

模块说明描述
Ape.Volo.ApiAPI 层对外提供 HTTP API 的宿主应用
Ape.Volo.Common公共类库跨模块复用的基础设施与通用代码
Ape.Volo.Core核心类库框架核心能力与横切支撑模块
Ape.Volo.EventBus事件总线类库领域/集成事件的发布与订阅机制
Ape.Volo.Infrastructure基础设施类库与宿主环境、中间件、外部系统的集成支持
Ape.Volo.TaskService定时任务服务任务调度与执行服务
Ape.Volo.IBusiness业务接口类库业务层接口定义(契约)
Ape.Volo.Business业务实现类库业务层实现(服务逻辑)
Ape.Volo.Entity数据库实体模型类库ORM 实体与映射定义
Ape.Volo.Repository仓储类库仓储模式实现与数据访问
Ape.Volo.ViewModel视图模型类库ViewModel/DTO 定义
Ape.Volo.SharedModel共享模型类库跨服务共享的模型与契约

Ape.Volo.Api ​

基于 ASP.NET Core 的宿主应用,承载 HTTP API 与中间件管道。

文件夹说明描述
wwwroot静态资源文件夹前端构建产物与静态文件托管目录
ActionExtension控制器扩展控制器扩展方法、过滤器与特性封装
ControllersAPI 接口控制器定义各领域的 RESTful 接口
Logs系统日志文件夹运行时日志输出目录
Program.cs程序入口类应用启动配置与中间件管道

Ape.Volo.Common ​

沉淀通用能力与基座代码,供各业务模块复用。

文件夹说明描述
Attributes特性类自定义 Attribute 元数据定义与使用
ClassLibrary通用类通用基础类与辅助组件
DI依赖注入相关服务注册与生命周期配置
Enums枚举项目公共枚举定义
Exception异常扩展自定义异常与异常处理扩展
Extensions类型扩展常用扩展方法集合
Global全局定义全局常量、选项与上下文
Helper帮助类常用工具方法与封装
IdGenerator雪花 ID 生成器分布式唯一 ID 生成实现
Model模型通用模型与 DTO
MultiLanguage多语言i18n 多语言支持能力
WebAppHTTP 上下文HTTP 上下文封装(HttpUser 等)

Ape.Volo.Core ​

提供横切能力(AOP、缓存、映射、日志等)与核心服务。

文件夹说明描述
Aop面向切面编程拦截/切面能力(AOP)
Caches缓存相关缓存抽象与实现
ConfigOptions配置选项强类型配置绑定与选项模式
Internal内部服务框架内部服务与契约
Mapping对象映射对象映射配置(如 Mapster/AutoMapper)
SeedData种子数据初始化系统所需的种子数据
Serilog日志组件Serilog 日志集成与配置
Utils工具类通用工具与辅助方法
App全局服务集成应用级服务聚合与统一入口

Ape.Volo.Infrastructure ​

面向宿主环境与外部系统的集成层,提供认证、过滤器、中间件与消息等能力。

文件夹说明描述
ActionFilter操作过滤器MVC 过滤器、审计与拦截
Authentication认证授权身份验证与权限控制
Extensions服务扩展类服务注册与扩展方法
Messaging消息队列MQ 抽象与实现
Middleware服务中间件中间件管道与横切能力

Ape.Volo.TaskService ​

任务调度与执行框架,承载计划任务与运行时作业。

文件夹说明描述
Service任务工厂实现具体任务工厂/调度实现
JobBase任务基类任务基类/抽象定义

Ape.Volo.EventBus ​

提供领域/集成事件的发布与订阅能力,支持多种实现(如 RabbitMQ)。

文件夹说明描述
Abstractions接口与抽象事件总线接口与契约
EventBusRabbitMQRabbitMQ 实现基于 RabbitMQ 的事件总线实现
Events事件模型事件消息的模型定义与记录
IEventBusSubscriptionsManager订阅管理接口事件订阅管理的接口定义
InMemoryEventBusSubscriptionsManager内存订阅管理实现基于内存的事件订阅管理实现
SubscriptionInfo订阅信息事件订阅信息模型

Ape.Volo.Repository ​

仓储实现与数据访问层,提供统一的数据持久化抽象与实现。

文件夹说明描述
SugarHandlerSqlSugar 仓储封装SqlSugar 仓储封装接口与实现
UnitOfWork工作单元工作单元接口与实现

Copyright © 2022-2026 xianhc