资料库和工作单元设计模式

杰森·H

这可能更多的是个人喜好,但我一直试图使用“存储库”和“工作单位”模式来解决问题,但是我看到了非常不同的用途,并且想知道哪个“更好”以及为什么。

用途1:
在此用途中,将存储库放入工作单元

用途2:
在此用途中,将工作单元放入存储库中

迈克·SW

情况很复杂。首先从我对存储库的简单解释开始接下来,UoW概念被过度使用和滥用。考虑到存储库,与聚合一起使用的DDD方法意味着存储库封装了一个UoW,因为聚合根中的所有内容都必须作为一个整体持久化。在数据库级别,UoW只是意味着使用事务,并且即使多个存储库使用同一事务,这也适用于多个存储库。

但是,在大多数情况下,这是错误的设计,因为它通常仅适用于非分布式应用程序,并且需要某些符合ACID的存储。尽管这可能是您的情况,但您使用的是“存储库”模式,这意味着您希望应用程序对持久性无知,这意味着您的应用程序不应该知道UoW,这是一种在持久性内部可用的模式(通过ORM或直接通过数据库交易)。

因此,我想说的“正确”答案是:存储库可以使用UoW实现,具体取决于特定的需求。如果您使用的是ORM,则会自动使用UoW。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 SqlConnection 实例的“工作单元”和“存储库”设计模式的依赖注入管理

实体框架核心,工作单元和存储库模式

PetaPoco +工作单元+存储库模式

使用Moq对通用工作单元和存储库模式框架进行单元测试

使用Moq进行单元测试的工作单元和通用存储库模式框架

在Windows窗体中使用带有工作单元和存储库模式的简单注入器

使用工作单元和存储库模式的3层MVC应用程序

如何在ADO.NET中使用存储库和工作单元模式?

具有多个DbContext的存储库和工作单元模式的最佳实践

用于发布实体的Asp.Net核心存储库和工作单元模式

使用存储库模式,工作单元和统一性的实体框架

存储库模式和工作单元中的体系结构问题

工作单元和存储库模式依赖性注入

存储库模式工作单元依赖注入注入

DDD资料库和工厂

CentOS 6和Fedora资料库

工作单元,存储库和连接的处置

信息库和工作单元vs渴望加载

确保数据被保存的工作单元模式

通用存储库中的工作单元

EF 6和依赖性注入设计问题的工作单元

关系表中具有工作单元的通用存储库模式

为什么要在EF的顶部使用工作单元构建存储库模式?

在工作单元/存储库模式中处理上下文

如何使用注入到存储库中的IServiceProvider来实现工作单元模式?

连结Android应用程式和资料库?

个人资料库与中央资料库

在运行时注入/管理,使用实体框架,依赖注入,工作单元和存储库模式来更改连接字符串

Github更新资料库