【问题标题】:DTOs : Several DTO (and Assemblers) for the same resourceDTO:同一资源的多个 DTO(和汇编程序)
【发布时间】:2010-01-23 11:32:39
【问题描述】:

根据具体情况,我经常需要多个 DTO 用于同一资源。

以相册为例。根据我想要显示的内容,我需要将不同的数据放入我的 DTO(通过表单、列表、详细信息等创建)。

我将有一个albumFormDTO 来创建专辑,一个albumDTO 集合用于专辑列表,还有一个albumDetailDTO 用于详细专辑。

对于每一个,我都需要一个特定的汇编程序。这样做似乎很沉重。

看起来很傻吗?

谢谢, 赛亚·本杰明。

【问题讨论】:

    标签: architecture dto data-transfer-objects


    【解决方案1】:

    不,听起来并不愚蠢。

    您建议的替代方法是创建一个用于多种目的的“super-dto”。并且只有 一些 字段用于每个目的。

    随着 dto 变大并且不清楚哪些字段对于哪些目的是必需的,这很快就会变得丑陋且难以维护。很难重构,也很难理解。

    【讨论】:

      【解决方案2】:

      要减轻为每个 DTO 创建汇编程序的痛苦,您可以使用 ModelMapper 等对象映射库自动为您完成大部分或全部工作。

      http://modelmapper.org

      【讨论】:

        猜你喜欢
        • 2018-11-06
        • 1970-01-01
        • 2020-12-12
        • 1970-01-01
        • 2018-02-20
        • 2015-01-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多