在我的 CQRS 架构中,我想验证当我发送一个 InsertSettingCommand(设置是一个键/值对象)时,我想检查我的数据库中是否不存在该键。如果我很好地理解 CQRS 和验证,它表示只有在验证某些格式化内容(例如检查电子邮件是否遵守某些语法或客户姓名不为空)时才应在客户端执行验证。但就我而言,我需要查询我的数据库以查看它是否存在,但我不知道在客户端查询我的读取存储是否正确?或者我应该在我的域端调用我的读取存储?然后抛出一个 InsertSettingDuplicated 事件?
那么在我的 CQRS 环境中,最好的方法是什么?有人说补偿措施?它可以帮助我吗?
谢谢。