/// <summary>/// 部門查詢服務/// </summary>public class DeptQuery(ApplicationDbContext applicationDbContext) : IQuery{ private DbSet<Dept> DeptSet { get; } = applicationDbContext.Depts; /// <summary> /// 獲取部門樹(使用投影優化性能) /// </summary> public async Task<IEnumerable<DeptTreeDto>> GetDeptTreeAsync( bool includeInactive = false, CancellationToken cancellationToken = default) { // 使用投影隻選擇需要的字段
,DDD主要體現在聚合根的系统設計上。開發體驗上
,实践或者將來可以加緩存、基于架构消息隊列選擇了RabbitMQ(通過CAP框架集成),管理基本的系统管理後台需求都能滿足。狀態管理用Pinia,实践2. CQRS模式(命令查詢職責分離)
CQRS在這個項目中主要體現在讀寫分離上
。基于架构比如部門ID是管理DeptId