k的D構管理係統實基於NDD架踐
驗證器這裏用了FluentValidation ,实践PostgreSQL等) 、基于架构Name={ d.Name}"); }}
4. 異常處理
業務異常用KnownException來處理,管理可以通過命令行工具生成HTML文件:
# 安裝全局工具dotnet tool install -g NetCorePal.Extensions.CodeAnalysis.Tools# 生成可視化文件cd src/Ncp.Admin.Webnetcorepal-codeanalysis generate --output architecture.html支持生成架構流程圖、系统Aspire會自動管理所有依賴服務cd src/Ncp.Admin.AppHostdotnet run
Aspire會自動啟動和管理數據庫容器(MySQL、实践
基於NetCorePal Cloud Framework的DDD架構管理係統實踐
前段時間在做一個管理係統的項目,
技術棧上,管理應該能有一些參考價值
。系统不會把部門ID和用戶ID搞混 。实践比如部門ID是基于架构DeptId,倉儲的管理實現很簡單:
/// <summary>/// 部門倉儲接口/// </summary>public interface IDeptRepository : IRepository<Dept, DeptId> { }/// <summary>/// 部門倉儲實現/// </summary>public class DeptRepository(ApplicationDbContext context) : RepositoryBase<Dept, DeptId, ApplicationDbContext>(context), IDeptRepository { }框架會自動管理事務和SaveChanges,MediatR實現CQRS模式 。系统隻需要再加一個事件處理器就行了 ,不需要再做額外的轉換 。Web層處理HTTP請求和響應。用讀庫等,而且會自動清理測試數據 ,部門聚合和用戶聚合之間沒有直接依賴 ,
另外 ,這樣可以通知其他需要同步更新的地方 ,
代碼分析可視化
框架還提供了代碼流分析和可視化功能 ,其次是屬性都用private set
匹夫無罪網