每个模块组合使用的共享库。稳定、理念明确、为 AI 辅助开发设计,具有严格的质量门禁。
- 01/11
核心构建块
基础领域原语 — Entity\<TId\>、AggregateRoot\<TId\>、Result\<T\>、领域事件、值对象、租户抽象,以及每个模块所依赖的完整类型层次。
- 02/11
持久化构建块
多适配器持久化层 — SqlSugar(主 ORM,简洁查询 API)、可选 EF Core 适配器、Dapper 只读查询,全部统一在 IUnitOfWork 抽象之后。
- 03/11
共享基础设施构建块
横切基础设施服务 — 审计管道(Channel 队列 + 异步写入器)、时钟抽象、种子框架(基于 CSV)、本地文件存储,以及可观测性基础。
- 04/11
Web / API 管道构建块
ASP.NET Core Minimal API 管道 — Mediator 集成、Mapster 对象映射、System.Text.Json 源生成序列化、Scalar OpenAPI、ProblemDetails 错误处理和限流。
- 05/11
缓存构建块
基于 IMemoryCache 的内存缓存 — 幂等去重、限流计数器,以及未来 FusionCache 多层缓存路线图。
- 06/11
事件构建块
基于 CAP 的事件驱动架构 — RabbitMQ 传输层、SQL Server Outbox 原子发布、集成事件契约和 Webhook 投递子系统。
- 07/11
事件抽象层
事件抽象层 — 领域事件、SaaS.Contracts 中的集成事件契约、INotificationPublisher 端口,以及 Null/CAP 实现对。
- 08/11
后台任务构建块
Quartz.NET 后台任务调度 — 独立 JobHost 进程、基于 Cron 的调度、审计保留清理和多实例安全。
- 09/11
存储构建块
文件存储抽象 — IFileStorage 端口与 LocalFileStorage 默认实现、FileAssetService 用于上传/下载/管理,以及云存储适配器路线图。
- 10/11
邮件构建块
计划中的邮件/通知投递基础设施 — 当前通过 INotificationDeliveryAdapter 端口处理,默认为 Null 实现。
- 11/11
配额构建块
用量配额管理 — PlatformBilling 模块提供基于订阅的权益、用量记录、配额检查和超额执行策略。
当前已包含
| 基础框架 | 用途 | 关键类型 |
|---|---|---|
| Domain | DDD 原语、Result 模式、实体接口、多租户、领域事件 | Result<T>、EntityBase、TenantId、IAuditableEntity、ISoftDelete |
| Application | Mediator 管道、授权、租户解析、审计接收器、缓存 | IAuthorizationDecisionService、ITenantResolver、IUnitOfWork、7 个管道行为 |
| Infrastructure | ORM 无关实现:审计、时钟、缓存、种子、存储 | AuditLoggerDispatcher、FusionCacheAppCache、LocalFileStorage、SeedRunner |
| Infrastructure.SqlSugar | 主 ORM 适配器——简洁干净、CodeFirst、CSV 种子 | SqlSugarUnitOfWork、SqlSugarAuditLogStore、CsvSeedStepBase<T> |
| Infrastructure.EfCore | 可选 ORM 适配器——IsTrimmable=false、相同契约测试 | BitzOrcasDbContext、EfCorePersistenceSchemaInitializer |
| Infrastructure.Dapper | 只读查询适配器——轻量读取路径 | DapperAuditQueryPort |
| Infrastructure.Persistence.Models | 所有 ORM 适配器消费的共享实体模型 | EntityBase、BizEntityBase、TenantEntityBase、PersistenceModelRegistry |
| Modularity | 模块治理——声明、依赖图、边界校验 | IAppModule、AppModuleRegistry、AppModuleDependencyGraph、AppModuleBoundaryVerifier |
| CodeGeneration.Abstractions | 代码生成元数据模型 | IModuleDefinition、IAggregateDefinition、ICodeGenerator |
| CodeGeneration.Scriban | 基于 Scriban 的代码生成器,含 13+ 模板 | 聚合、领域事件、命令、处理器、仓储、端点模板 |
适配器模式
所有基础框架使用四层适配器策略:
| 层 | 前缀 | DI 注册 | 用途 |
|---|---|---|---|
| 默认 | InMemory*、Null* | TryAddSingleton | API Shell、单元测试 |
| 生产 | SqlSugar*、Local* | AddScoped(非 TryAdd) | 主运行时,覆盖默认 |
| 可选 | EfCore*、Dapper* | AddScoped | 可切换适配器,相同契约测试 |
| 不可用 | Unavailable* | TryAddSingleton | 快速失败默认 |
相关
- 架构概览 — 模块化单体 + 垂直切片模式
- 架构图 — 系统可视化图表
- ORM 适配器模式图 — 详细的适配器切换图