CQRS 是 CRUD 的替代品吗?



CQRS 和 CRUD 之间有什么区别,我可以在这两种情况下使用 UnitOfWork 和存储库模式吗?

如果我在主体之间有复杂的关系,你推荐我哪一个,为什么?

CQRS 模式:http://martinfowler.com/bliki/CQRS.html
克鲁德 : http://en.wikipedia.org/wiki/Create,_read,_update_and_delete

任何帮助将不胜感激。

CQRS 通常用于复杂的应用程序项目。 DDD 还用于复杂的应用程序项目,并且似乎与 CQRS 相关联。DDD 尝试处理行为的复杂性。 CRUD系统几乎没有行为。行为很少或没有行为的系统实际上没有复杂的事件结构,因此很难说您从 CQRS 中获得多少好处。

CRUD - 对一个对象执行读取和写入操作。

CQRS - 将读取和写入操作拆分为两个单独的对象。您可以简化它,并将其实现为一个对象上的两个独立接口:一个用于读取,一个用于写入。然后,您可以根据需要实例化对象。或者,您可以进一步移动它,并使用单独的数据库进行读取和写入。

在大多数情况下,CRUD 就是答案,但 CQRS 可以适用于某些复杂的方案。

如果使用的是实体框架,则不应使用工作单元和存储库,因为它是由 EF 本机实现的。

在 CRUD 中,使用工作单元和存储库是正常的。对于 CQRS - 我不知道。

相关内容

  • 没有找到相关文章

最新更新