在我的CQRS架构中,当我发送InsertSettingCommand(设置是一个键/值对象)时,我希望验证该键在我的数据库中不存在。如果我正确理解了CQRS和验证,它表示验证应仅在客户端执行,仅用于验证某些格式方面的内容,例如检查电子邮件是否符合某些语法规则或客户姓名不为空。但在我的情况下,我需要查询我的数据库以查看它是否存在,但我不知道在客户端中查询我的读取存储是否正确?还是应该在我的领域端调用我的读取存储?然后引发InsertSettingDuplicated事件?
那么,在CQRS环境中,对于我的情况,应采取什么最佳方法?有些人谈论补偿措施?这是可以帮助我的东西吗?
谢谢。
那么,在CQRS环境中,对于我的情况,应采取什么最佳方法?有些人谈论补偿措施?这是可以帮助我的东西吗?
谢谢。