【发布时间】:2016-08-20 15:23:10
【问题描述】:
我有一个演员(Person),我希望能够在某个状态期间存储消息。问题是我不确定如何最好地做到这一点。
假设我有一些命令。
ChangeAddress
ChangePhoneNumber
BeginMove
FinishMove
当我正在移动时(在 BeginMove 开始之后和 FinishMove 之前),我想阻止对 Address 和 PhoneNumber 的更新,并在移动完成后重播任何事件。我使用的是 ReceivePersistentActor,每个命令都是不同的类。
现在我正在考虑在 actor 上设置一个状态标志,但虽然成为/不成为功能会更自然,但不知道如何将其应用于不同的命令。
作为一个附带问题,是否有一个很好的模式来分解必须编写的命令数量和恢复,因为参与者需要处理更多命令/事件?
【问题讨论】:
-
我已经用我认为你需要的流程更新了我的答案
标签: akka.net