C# DDD骨料设计问题

C# DDD骨料设计问题,c#,.net,domain-driven-design,C#,.net,Domain Driven Design,这是我试图做的一个过于简化的版本 我有一个故事,由一个用户审查,该用户可以将其添加到他们的投票中。业务规则是一个故事只能属于审阅者投票,且投票不能包含超过12个故事 现在我把这个故事作为聚合根,它包含很多行为和状态转换。到目前为止,评论员还没有参与进来。我很难为这个设计建模。我现在有两个Aggreate Story和StoryReviewer吗 任何想法都会很棒 如果我理解正确,故事可以处于“未查看”状态,换句话说,故事本身存在,然后可能会被审查并添加到用户投票中。如果这是真的,那么看起来您有两

这是我试图做的一个过于简化的版本

我有一个故事,由一个用户审查,该用户可以将其添加到他们的投票中。业务规则是一个故事只能属于审阅者投票,且投票不能包含超过12个故事

现在我把这个故事作为聚合根,它包含很多行为和状态转换。到目前为止,评论员还没有参与进来。我很难为这个设计建模。我现在有两个Aggreate Story和StoryReviewer吗


任何想法都会很棒

如果我理解正确,故事可以处于“未查看”状态,换句话说,故事本身存在,然后可能会被审查并添加到用户投票中。如果这是真的,那么看起来您有两个聚合根User和Story

如果它不是真的,并且故事总是属于某个用户的选票,并且永远不能从一个用户重新分配给另一个用户,那么您可能只需要一个聚合根:user。故事只是用户聚合中的一个实体

无论哪种方式,选票本身都可能是用户/StoryReviewer聚合中的一个实体。投票似乎是执行12层投票规则的好地方