表单场景下:返回UserDto还是创建RegistrationForm实体映射领域模型?
注册场景:返回UserDto还是创建RegistrationForm实体?
如果你的注册流程简单,表单字段和User实体的核心字段高度重合(比如只需要用户名、密码、邮箱,顶多再加个确认密码),直接用UserDto就行。没必要额外创建实体,省得增加不必要的复杂度——给UserDto加个确认密码字段,做完校验后直接映射到User领域模型就完事。
但如果注册表单有很多和User实体无关的临时字段(比如验证码、邀请码、隐私协议勾选状态),或者注册逻辑复杂(比如分步骤注册、需要单独校验注册专属规则),那单独创建RegistrationForm实体更合理。这种场景下,RegistrationForm专门负责承接注册时的输入数据、做专属校验,之后再把有效数据映射到User领域模型,能让代码职责更清晰,避免UserDto被塞一堆无关字段变得臃肿。
总结来说,核心看注册输入和User实体的匹配度:匹配度高就复用UserDto,差异大就单独搞RegistrationForm,怎么清爽怎么来。
内容的提问来源于stack exchange,提问作者Олександр Житарюк
相关产品推荐
相关产品推荐

