我有2个集合,它们具有一对多关系。例如,我有一个问题列表,我想将其中一些添加到问卷中,其中一些是强制性的,必须添加到所有问卷中,某些不是,并且问卷的创建者选择了它们。< / p>
假设我正在使用事件源和CQRS。我创建了问题列表,并想将必填问题添加到问卷中。 通常我会这样做
questionaire.AssignQuestions(questions.Where(q => q.isMandatory).Select(q => q.Id))
类似的东西。但是在CQRS中,我不应该为此使用查询模型。但是在命令模型中,我使用的是事件存储,因此我必须重播所有问题的所有事件,这似乎不合理。
我的模型很可能没有足够的面向事件的模型,但是目前我还没有一个更好的主意。我应该如何建模?
谢谢
答案 0 :(得分:1)
您的命令处理程序可以查询读取模型以检索问题ID列表以构成问卷。
但是在CQRS中,我不应该为此使用查询模型。
这只是一个错误的神话