域驱动设计 – 在CQRS中,如何将聚合的允许方法列表传递给UI?
发布时间:2020-05-27 10:22:44 所属栏目:程序设计 来源:互联网
导读:我有一个聚合根’Order’,它有许多方法在其内部设置其’Status’字段: 提交 暂停 起飞保持 确认 取消 等 可用的操作取决于订单的当前状态(例如,如果它已经处于暂停状态,则不能将其置于保持状态).问题是我需要提供一个查询来告诉UI哪些命令是可用的,这样我就
我有一个聚合根’Order’,它有许多方法在其内部设置其’Status’字段: >提交 可用的操作取决于订单的当前状态(例如,如果它已经处于暂停状态,则不能将其置于保持状态).问题是我需要提供一个查询来告诉UI哪些命令是可用的,这样我就可以隐藏否则会抛出InvalidOperationException的操作. 如何以最小的DRY违规执行此操作? 最简单的解决方案是将当前状态与可用的转换投影到读取/查询模型,并将其与要显示的数据一起选择.例: 这当然是一种选择.不要指望不会有任何重复. CQRS有助于管理复杂性,有时这意味着轻微违反DRY. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |