该技能用于在遵循 Clean Architecture 的 .NET 项目中生成 CQRS(命令查询职责分离)模式的命令代码,命令代表改变系统状态的意图。每个命令由四部分组成:命令记录(不可变数据结构,携带请求参数)、校验器(基于 FluentValidation 的输入校验规则)、处理器(返回 Result 的业务逻辑实现)以及可选的请求 DTO(API 层请求模型)。
命令分为两类:ICommand 返回 Result,适用于无返回值的更新、删除操作;ICommand<T> 返回 Result<T>,适用于创建等需返回数据(通常为实体 ID)的操作。目录结构按功能划分,例如 Application/{Feature}/Create{Entity}/ 下放置命令文件与可选请求文件。
文档提供创建(带返回值)、更新(不带返回值)、删除以及复杂请求对象(嵌套子项)四种模板,并给出常用 FluentValidation 规则示例,覆盖字符串、数值、GUID、邮箱、条件、集合及自定义校验。处理器模式包括单实体操作、关联实体、批量操作和事务处理。
关键约束包括:命令使用 record;每个命令仅一个处理器;校验器为 internal;业务错误使用 Result 而非抛异常;通过 IUnitOfWork 调用 SaveChanges 而非在仓储中保存;所有异步调用传递 CancellationToken;领域逻辑放在 Domain 层,处理器只做编排;创建操作返回 ID。文档同时列出应避免的反模式,如为业务错误抛异常、在仓储中保存更改等。该技能面向 .NET 后端开发场景,具体安装方式、命令及是否收费暂未提供。