1

我搜索了如何在多个 Handler 之间共享 TableBatchOperation Azure 表存储,以进行事务行为。

在 CQRS 场景中,我会在 Azure 表存储中进行多次插入,但是对于像 MediatR 这样的总线内存,如果此插入在不同的处理程序中,如果一个失败但另一个失败,则很难。

我认为如果我在 publish() 调用方法之前和之后共享一个 TableBatchOperation 就可以了。

有这样做的建议吗?

4

1 回答 1

1

CQRS 的一般规则是每个命令都在单独的事务中处理。如果您希望在一个事务中处理多个命令,您需要为整个批次发送一个命令,或者您需要查看 saga/courier 模式。

于 2017-12-27T16:14:36.947 回答