0

假设我有两个模型

ProjectTask

一个项目可以有很多任务,但一个项目只能有一个状态为 的任务in_progress

据我了解,这通常作为根聚合的域不变量的一部分处理

然而,在这种情况下,与项目相关的任务列表可能是无限的,所以在我看来它不太适合,但同时项目应该控制和维护上述不变量

关于如何最好地建模这个有什么建议吗?

4

1 回答 1

0

听起来您在项目和任务之间有关系,应该是一对一的。

project inProgress task

你的限制是每个项目的这种关系应该是唯一的

这反过来表明您的项目 API 包括以下成员

TaskId currentTask()
void changeTasks(TaskId nextTask)
于 2018-05-10T14:38:53.843 回答