目前我们有一个 Asp.net 应用程序,它使用SQL服务器作为普通的整体应用程序进行写入和读取查询。
现在我们要迁移到 CQRS。
在 CQRS 中,读取模型是根据事件生成的。
但是对于我的应用程序的先前事务数据,我们没有任何事件或日志。
那么我们如何从现有SQL服务器数据库的数据中生成NoSql数据库中的读取模型呢?
在 CQRS 中,通常不需要从事件生成读取模型,CQRS 是将读取与写入分开的方法,它与事件无关。 对于迁移到 CQRS 的第一步,可以使用与现在相同的模型(数据库中的相同表(。您唯一会拆分 API 逻辑 所有修改系统状态的操作(如创建更新删除操作(都应通过执行命令来完成。和仅通过查询读取。
如果您确实需要单独的读取模型,则需要在下一步中实现将生成读取模型的事件和事件处理程序。为了更轻松,您可以查看AppFactory项目CQRS