随笔分类 -  DDD

摘要:🎯 核心概念 事件总线分层架构 ABP提供两种事件总线模式: 类型 作用域 特点 本地事件总线 单进程内 与事务绑定,异常会触发回滚 分布式事件总线 跨进程/服务 解耦服务间通信,支持微服务架构 关键优势 代码兼容性:使用IDistributedEventBus可同时兼容本地和分布式模式 渐进式架 阅读全文
posted @ 2026-01-11 20:28 【唐】三三 阅读(64) 评论(0) 推荐(0)
摘要:工作单元 ABP框架的工作单元(UOW)实现提供了对应用程序中的数据库连接和事务范围的抽象和控制。 一旦一个新的UOW启动,它将创建一个环境作用域,当前作用域中执行的所有数据库操作都将参与该作用域并将其视为单个事务边界。操作一起提交(成功时)或回滚(异常时)。 ABP的UOW系统是: 按约定工作,所 阅读全文
posted @ 2026-01-11 00:04 【唐】三三 阅读(35) 评论(0) 推荐(0)
摘要:异常处理是Web应用程序的核心能力之一,ABP框架提供了标准化、自动化的异常处理模型,涵盖异常捕获、格式化响应、本地化、日志记录、HTTP状态码映射等全场景能力。本文将基于ABP官方文档,结合核心知识点,带你系统掌握ABP异常处理的设计逻辑与实战用法。 一、ABP异常处理核心体系 1. 核心特性 A 阅读全文
posted @ 2026-01-10 20:18 【唐】三三 阅读(74) 评论(0) 推荐(0)
摘要:1. 缓存功能概述 在 ABP 框架中实现缓存功能主要涉及以下核心组件: 分布式缓存接口 IDistributedCache<T> 缓存项定义 (如 BookCacheItem) 缓存键生成器 (如 BookCacheKeyGenerator) 批量缓存操作 (如 BookCacheBulkOper 阅读全文
posted @ 2026-01-10 15:50 【唐】三三 阅读(65) 评论(0) 推荐(1)
摘要:一文吃透ABP框架实体变更事件:Created/Updated/Deleted 实战指南 在ABP框架的领域驱动设计(DDD)体系中,实体变更事件是解耦业务逻辑、实现联动操作的核心机制。EntityCreatedEventData<TEntity>、EntityUpdatedEventData<TE 阅读全文
posted @ 2026-01-10 15:06 【唐】三三 阅读(80) 评论(0) 推荐(0)
摘要:ABP v8.1 授权系统完整指南 - Publishers模块实战示例 本指南详细演示如何为ABP BookStore项目的Publishers模块添加完整的权限控制,涵盖从权限定义到实际应用的全流程。 📚 目录 概述 权限定义与注册 权限的三种使用方式 完整代码示例 权限测试 权限系统高级配置 阅读全文
posted @ 2026-01-10 13:24 【唐】三三 阅读(53) 评论(0) 推荐(0)
摘要:方式一:在Domain层(聚合根)发布事件 事件对象 创建的文件: 事件类:src/Acme.BookStore.Domain/Publishers/Events/PublisherCreatedEvent.cs 定义了Publisher创建时的事件数据 using System; namespac 阅读全文
posted @ 2026-01-09 13:43 【唐】三三 阅读(43) 评论(0) 推荐(1)
摘要:1. Options 类定义 (PublisherOptions.cs) 包含出版社相关的配置参数 使用数据注解进行验证 提供默认值 using System.ComponentModel.DataAnnotations; namespace Acme.BookStore.Options { pub 阅读全文
posted @ 2026-01-09 11:18 【唐】三三 阅读(14) 评论(0) 推荐(0)
摘要:代码类型 放置模块 说明 常量 Domain.Shared 如 AuthorConsts.MaxNameLength 枚举 Domain.Shared 如 BookType 枚举 错误码 Domain.Shared 如 BookStoreDomainErrorCodes 本地化资源 Domain.S 阅读全文
posted @ 2026-01-09 10:01 【唐】三三 阅读(106) 评论(0) 推荐(0)
摘要:一、定义实体 ABP 框架通过提供一些接口和基类来标准化实体的定义。在接下来的章节中,你将了解 ABP 框架的 AggregateRoot 和 Entity 基类(及其变体),使用这些类使用单个主键(PK)和复合主键(CPK),以及与全局唯一标识符(GUID)PK 协同工作。 AggregateRo 阅读全文
posted @ 2025-10-31 11:29 【唐】三三 阅读(129) 评论(0) 推荐(0)
摘要:ABP CLI 安装需要的版本 dotnet tool install -g Volo.Abp.Cli --version 8.3.4 https://www.nuget.org/packages/Volo.Abp.Cli/10.0.0-rc.1#versions-body-tab 查看你需要的 然 阅读全文
posted @ 2025-10-29 17:26 【唐】三三 阅读(97) 评论(0) 推荐(0)
摘要:懒加载 对于 ABP 框架的懒加载机制,核心是围绕 ILazyServiceProvider 接口及其实现类展开的。作为新手,你可以简单理解为:它是 ABP 提供的“延迟获取服务的工具”,能让你在需要时才创建服务实例,而不是一开始就初始化所有依赖。 核心接口和类 ILazyServiceProvid 阅读全文
posted @ 2025-10-25 12:42 【唐】三三 阅读(110) 评论(0) 推荐(0)
摘要:种子数据(Seed Data) 核心辅助类: IDataSeeder:数据种子接口。 DataSeedContext:种子数据上下文。 种子数据是指项目启动时自动向数据库插入的初始化数据(比如默认管理员账号、基础配置项、测试数据等),核心作用是避免手动插入基础数据,保证项目部署后能直接用。ABP通过 阅读全文
posted @ 2025-10-24 22:20 【唐】三三 阅读(86) 评论(0) 推荐(0)
摘要:(1)SaaS多租户(Multi-Tenancy) 核心辅助类: ITenantRepository:租户仓储。 ICurrentTenant:当前租户信息。 MultiTenantAttribute:标记多租户支持。 SaaS(软件即服务)多租户是指一个系统同时为多个租户(如不同公司、部门)提供服 阅读全文
posted @ 2025-10-24 22:19 【唐】三三 阅读(167) 评论(0) 推荐(0)
摘要:(1)事件总线(Event Bus) 核心辅助类: IEventBus:发布/订阅事件。 LocalEventBus:本地事件总线(进程内)。 IntegrationEvent:跨服务集成事件。 事件总线是一种“发布-订阅”模式的通信机制,用于解耦系统中的各个模块或服务。简单说就是:一个模块“发布” 阅读全文
posted @ 2025-10-24 22:12 【唐】三三 阅读(229) 评论(1) 推荐(0)
摘要:(一)缓存(Caching) 核心辅助类: IDistributedCache:分布式缓存(基于Redis等)。 ICacheManager:缓存管理器(支持多级缓存)。 [Cache]:方法缓存特性。 ICacheKeyNormalizer:缓存键标准化器,自动添加租户前缀(多租户场景)或应用前缀 阅读全文
posted @ 2025-10-24 22:03 【唐】三三 阅读(131) 评论(0) 推荐(0)
摘要:一、异常处理(Exception Handling) 常用核心辅助类: AbpExceptionFilter:自动捕获并处理异常。 UserFriendlyException:用户友好异常(直接返回给前端)。 IExceptionSubscriber:自定义异常订阅。 1、核心类全解析 类/特性/接 阅读全文
posted @ 2025-10-24 21:51 【唐】三三 阅读(179) 评论(0) 推荐(0)
摘要:接口授权(Authorization) 核心辅助类: [Authorize]:标记需要授权的接口。 [AllowAnonymous]:允许匿名访问。 IPermissionChecker:手动检查权限。 PermissionDefinitionProvider:定义和组织权限的推荐方式. 接口授权( 阅读全文
posted @ 2025-10-24 21:41 【唐】三三 阅读(206) 评论(0) 推荐(0)
摘要:JWT 鉴权(JWT Authentication) 核心辅助类: AbpJwtBearerModule:JWT集成模块。 JwtBearerOptions:JWT配置选项。 JWT(JSON Web Token)是ABP框架中常用的无状态鉴权方案,核心作用是“让客户端携带Token访问接口,服务器 阅读全文
posted @ 2025-10-24 21:32 【唐】三三 阅读(151) 评论(0) 推荐(0)
摘要:一、工作单元(Unit of Work) 核心辅助类: IUnitOfWorkManager:管理工作单元。 UnitOfWorkAttribute:标记方法为工作单元(自动事务)。 UnitOfWorkOptions:工作单元配置选项(如事务隔离级别、超时时间)。 在ABP框架中,工作单元(Uni 阅读全文
posted @ 2025-10-24 21:17 【唐】三三 阅读(166) 评论(0) 推荐(2)