【发布时间】:2011-02-03 13:15:54
【问题描述】:
我是域驱动设计的新手。我有一个 Web 应用程序,用户可以在其中通过任务保存进度的中间结果,即将表单上的数据另存为草稿,然后再回来填写。如果表单表示一个实体及其聚合的根,是否可以根据状态将实体保存在半生不熟的状态?
【问题讨论】:
标签: domain-driven-design entity save progress
我是域驱动设计的新手。我有一个 Web 应用程序,用户可以在其中通过任务保存进度的中间结果,即将表单上的数据另存为草稿,然后再回来填写。如果表单表示一个实体及其聚合的根,是否可以根据状态将实体保存在半生不熟的状态?
【问题讨论】:
标签: domain-driven-design entity save progress
视情况而定,对此确实没有正确的通用答案。
虽然可以走这条路,但它可能会干扰我倾向于遵循的另一个原则,即没有域对象可以处于无效状态。
由于您子系统的域是表单的提交,尽管按州执行此操作可能是合乎逻辑的 - 也就是说,域本身不排除半填的表单,只有在提交时所有必填字段都需要的规则待完成才真正生效。
例如,半填表格有效可能很有意义 - 特别是如果表格需要通过工作流程(例如让主管签字)直到它可以被视为完整
【讨论】: