我们正在将遗留系统迁移到 nservicebus 5.0。将我们的业务数据迁移到 saga 数据的最佳方式通常是什么?例如,如果我们有一个 OrderCancellationPolicy saga,它只允许在 2 天内取消,那么来自遗留系统的过去订单如何以正确的状态创建这些新的 saga?
我看到两个选项。首先是编写一些 sql 脚本来预填充 saga 持久性表(我们使用的是 nhibernate 持久性)。另一种是创建某种特殊的导入消息,例如 MigrateOrderDataCmd,其中包含来自旧订单的数据。导入脚本可以发送 saga 可以处理的这些消息,并以这种方式设置 saga 数据。
对此领域的任何指导表示赞赏。