建模聚合

Modeling aggregates

我有以下要求:

好吧,在这种情况下,您可以为文章创建一个聚合,另一个为问题创建一个聚合,另一个为答案创建一个聚合。

如果是,如何保持一篇文章有​​1到3个问题的不变性?

如果不是,你会如何建模?

非常感谢!

  • 文章聚合包含一组对问题的引用(通过聚合根,例如问题 ID)
  • 如果该文章已经有 3 个引用,则尝试添加对该问题的引用会失败

由于聚合定义了一致性边界,因此发表文章是一个传奇。如果您希望问题跟踪与它关联的文章(您没有直接说问题保持只与一篇文章关联的不变性),那么添加问题同样会成为一个传奇。