【问题标题】:Domain Driven Design - How to use value object on the UI领域驱动设计 - 如何在 UI 上使用值对象
【发布时间】:2010-01-23 13:07:43
【问题描述】:

我想知道您如何在 Web 应用程序中使用您的 ddd 模型。在 Eric Evan Cargo 应用程序中有 Cargo class,其中包含值对象 Itinerary。在 Itinerary 中是 Legs 的集合,也是一个值对象。所有值对象都向外界隐藏代理 id。 因此,当使用此域模型时,我将如何创建一个 Web 应用程序,您可以在其中单击货物行程,列出所有航段,然后通过重定向到新的“航段详细信息”页面来显示航段的详细信息。通常我会在查询字段中传递 LegId,然后在详细信息页面上再次读取它。但是既然它没有id,你会怎么做呢?

使用在对集合进行排序时可能会更改的腿的索引?

传递查询字段中的所有值,因为这是值对象标识?

对我来说听起来像是倒退了一步:)

【问题讨论】:

    标签: java .net design-patterns domain-driven-design


    【解决方案1】:

    如果腿没有 id,那么您必须引用它的唯一方法是通过 Cargo,它具有身份,因此可以与 URI/URL 相关联。要引用特定的腿,您只有索引,可以是数字或字典键。如果您有排序问题,您可以定义两个列表:一个具有规范排序以供参考,另一个具有排序、映射顺序位置和规范索引。

    至于Evans的例子中的值对象为什么有id,我觉得是为了序列化的目的。

    当然,您也可以选择带身份的行程/行程。

    【讨论】:

      猜你喜欢
      • 2015-01-06
      • 2015-02-27
      • 2013-12-07
      • 1970-01-01
      • 2011-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-06
      相关资源
      最近更新 更多