ddd中的多对多关系

时间:2011-02-05 20:14:13

标签: domain-driven-design

我有两个聚合根,发布者和广告系列:

  • 1个广告系列可以注册多个发布商,
  • 1个发布商可以分配到多个广告系列。

这意味着MToM关系

所以在Publisher类中,我创建了

List<Campaign> _campaigns;

并在Campaign类

List<Publisher> _publishers;

我创建了包含列(id,publisherID,CampaignID)

的表

但我听说MtoM应该避免,我该怎么做?上述描述是否正确?

1 个答案:

答案 0 :(得分:3)

你应该避免多对多的关系,因为通常遵循这种关联的复杂性。一种方法是强制执行遍历方向。因此,在您的域中,如果最常见的操作是针对发布商及其广告系列,则可以认为只有在特殊情况下才需要双向关系,而是在广告系列资源库中有一个方法来检索给定广告系列的所有发布商。然后,您可以从广告系列类

中删除发布商列表

当然还是相反。

相关问题