领域驱动设计问题

时间:2009-01-10 14:21:54

标签: design-patterns oop dns domain-driven-design

我想请求一个推荐的解决方案:  我们有一份比赛清单。  每个竞赛都定义了参与者必须支付的费用   我们有参与者 我必须知道竞赛中的参与者是否支付了费用。我正在考虑2个解决方案,问题是它必须是领域驱动设计中最合适的解决方案。 首先是在竞赛中创建一个字典而不是List,字典的类型为< Participator,bool>。 secont可能会创建一个不同的类,它有2个字段,一个参与者和feePaid。在竞争中,我会得到一个新类的对象列表。

谢谢

2 个答案:

答案 0 :(得分:6)

听起来像是典型的多对多关系。我会使用Entry关联类对其进行建模,如下所示:

class Participator {
}
class Competition {
    Currency fee
}
class Entry {
    Competition competition
    Participator participator
    Boolean feePaid
}

答案 1 :(得分:5)

我处理此事的方式是举办比赛,参赛者和注册。参与者将注册竞赛,创建注册。注册将包括竞赛ID,参与者ID,指示是否支付费用的标志,以及任何其他注册特定数据(如注册日期)。这将在数​​据库中建模为“连接表”(带有附加数据)。在应用程序方面,参与者将有一个注册列表,每个注册将有一个相关的参与者和一个竞赛。同样,每个比赛都会有一份注册清单。