简化我的用例,但我想创建一个 REST 服务来处理客户订单。
在 RPC 世界中,我将创建一个 RPC 端点
OrderProduct(CustomerID, ProductID, Quantity)
这个会
- 创建订单数据库记录
- 减少产品数据库记录中的可用库存
- 在 Worklist 表中创建一个条目以进行选货
(不是我真正的用例,但比我正在做的更容易理解)
在我的 REST 方法中,我已经拥有 Customer、Product 和 Worklist 的 POST 端点,但我现在需要在一个事务中组合对所有 3 个端点的调用。我的问题是在插入工作列表因任何原因失败的情况下能够回滚。
那么创建一个仅公开 POST 的 ProductOrder 端点是否合适?
在处理 POST 的服务中,我将创建一个数据库事务并直接与数据库交互以更新我关心的三个表。
我的紧张就在身边
- 不重新使用我已经公开的实体端点。
- 发明一个实体只是为了处理 RPC 类型调用(因此只实现 POST)
谢谢,安迪