ABP 如何写DTO
- 在 application.contracts 层中定义DTO.
- 在可能和必要的情况下从预构建的 基础DTO类 继承 (如 EntityDto
, CreationAuditedEntityDto , AuditedEntityDto , FullAuditedEntityDto 等). - 从聚合根的扩展DTO继承(如 ExtensibleAuditedEntityDto
), 因为聚合根是可扩展的额外的属性使用这种方式映射到DTO. - 定义 public getter 和 setter 的DTO成员 .
- 使用 data annotations 验证 service输入DTO的属性.
- 不要在DTO中添加任何 逻辑, 在必要的时候可以实现 IValidatableObject 接口.
- 为所有的DTO标记 [Serializable] Attribute. 因为它们已经是可序列化的, 开发人员可能会希望进行二进制序列化.

浙公网安备 33010602011771号