代码之家  ›  专栏  ›  技术社区  ›  Serge

在DDD中定义多对多关系

  •  3
  • Serge  · 技术社区  · 15 年前

    还有,一对多的关系呢?例如,如果我有两个结构Post&带有1对多(分别)的注释不会是一个值对象,因为从技术上讲,如果没有相应的帖子,它就不可能存在?但是如果它有一个唯一的Id(Comment\u Id)呢?这使得它可以识别,因此是一个无价值的对象实体?那么,是哪一个?

    谢谢

    1 回复  |  直到 15 年前
        1
  •  1
  •   Mike Chaliy    15 年前

    如果您仍然想使用DDD,这不是问题。一些准则:

    1. 如果您想从业务逻辑之外引用某个对象,它应该是实体。因此,如果您需要引用注释(否则您将无法有效地管理它们),您需要将注释作为一个实体。
    2. 你必须最大限度地坚持。这意味着它无法向您的业务逻辑公开标识符。
    3. 多对多和一对多关系使用普通集合建模。ORM工具应该正确映射这些集合。