unit-of-work相关内容

SQL Server:在事务中包装 SELECT 查询是否有任何性能损失?

作为学习练习,在尝试使用任何 ORM(如 EF)之前,我想使用 ADO.NET 和存储过程构建一个个人项目. 因为我不希望我的代码随着时间的推移变得一团糟,所以我想使用一些模式,比如存储库和 UoW 模式. 除了事务处理之外,我几乎把所有事情都弄清楚了. 为了以某种方式“模拟" UoW,我使用了 this class 由@jgauffin 提供,但阻止我使用该类的是,每次创建该类 ..
发布时间:2022-01-23 21:41:05 C#/.NET

EF6 + DatabaseFirst 的存储库模式

当前系统: 我正在开发一个如下所示的多层项目(按流程顺序),我正在学习并尝试首先在 EF 数据库上使用 UOW 实现 Repo Pattern. 服务(Web API) 商业(C# 类库) 存储库(回购模式 + UOW) ViewModels(由我的服务用于发送到我的 UI 层) 数据(实体) 数据库 (SQL Server) 存储库: 通用存储库: 公共接口I ..

如何强制触发 OnModelCreating 每个初始化的 DataContext

我想触发 OnModelCreating 每个 new DataContext(new Entity()) ...但是当我创建一个表的连接时,它可以工作.当为另一个表创建连接时,OnModelCreating 不再工作,所以因为我得到了错误, 实体类型不是当前上下文模型的一部分. 公共类 DataContext : DbContext{私有 BaseEntity _e ..
发布时间:2022-01-20 11:01:16 C#/.NET

UnitOfWork 和 GenericRepository Pattern 在 EF 4.1 代码中是多余的吗?

想知道我是否需要使用 Genericrepository 模式和 UnitOfWork 来模拟存储库.我正在使用 MOQ.它现在是否多余,因为我注意到 EF 4.1 具有 IDBSet. 我还没有想出如何编写通用 IDBSet 的东西.如果你有一个实现 IDBSet 的示例,你能告诉我吗? 有什么建议吗? 解决方案 这是已经在 SO 上讨论过的许多主题的重复,但我同意其中一些可 ..

Entity Framework Core 1.0 工作单元与 Asp.Net Core 中间件或 Mvc 过滤器

我将 EF Core 1.0(以前称为广告 EF7)和 ASP.NET Core 1.0(以前称为 ASP.NET 5)用于 RESTful API. 我希望将某个工作单元的范围限定为 http 请求,这样在响应 HTTP 请求时,要么将对 DbContext 所做的所有更改都保存到数据库中,要么不保存任何更改(如果有一些例外,例如). 过去,我通过使用 Action 过滤器将 Web ..

何时使用 PerThreadLifetimeManager?

我正在按照下面链接的示例设置统一以使用我的服务层.我的项目设置与本文中的项目非常相似,除了在注册服务依赖项时使用 PerThreadLifetimeManager 的确切原因之外,我了解所有内容.请记住,我还使用了一个通用存储库和工作单元,它也在我的服务层中使用.大多数统一示例使用默认(瞬态)生命周期管理器,并且由于我的设置类似于下面的设置,我想知道为什么我应该使用 PerThreadLifeim ..

UnitOfWork 是否等于事务?或者它不止于此?

互联网上充斥着关于UnitOfWork模式的信息;即便如此也不例外. 我还是不明白.以我的理解UnitOfWork = Transaction in DB.就这样;不多不少. 这是正确的吗? 我的困惑在于它是如何在不同的 ORM 中实现的.NHibernate 使用 ISession 不仅仅是一个 Transaction.Dapper 把一切交给你. 我这里的问题只是关于设 ..
发布时间:2021-12-22 08:43:58 其他开发

UnitOfWork 和 GenericRepository 模式首先在 EF 4.1 代码中是多余的吗?

想知道我是否需要使用 Genericrepository 模式和 UnitOfWork 来模拟存储库.我正在使用 MOQ.它现在是多余的,因为我注意到 EF 4.1 具有 IDBSet. 我还没有想出如何写一些通用的东西来使用 IDBSet .如果你有一个实现 IDBSet 的例子,你能展示给我看吗? 有什么建议吗? 解决方案 这与 SO 上已经讨论过的许多主题重复,但我同意其 ..

使用存储库的工作单元模式中的依赖注入

我想创建一个工作单元类,它以类似于 这个. 我遇到的问题是试图通过用 IRepository 接口替换示例中的通用存储库来实现依赖注入.在链接文章的 uow 中,他们使用 getter 检查存储库是否已实例化,如果未实例化,则将其实例化. public GenericRepository部门资料库{得到{如果(this.departmentRepository == null){this. ..
发布时间:2021-12-08 20:16:55 C#/.NET

在 WinForms MDI 中使用具有存储库模式的实体框架

我们即将启动一个与之前的项目类似的新项目.我可以复制旧设计,但我对旧设计不太满意. 它是一个“标准"业务系统(销售、库存盘点、仓储等),构建在 .Net 3.5(Winforms MDI)之上,后端带有实体框架. 所有表单都继承自一个基本表单(它继承了 Windows.Form).该表单公开了一个名为 ObjectContext 的属性,它在第一次调用时实例化一个新的 ObjectCo ..

工作单元是否是自动生成新对象(auto_increment id)的事务的好模式?

从工作单元模式中,我理解了一种基于某些域 repostiries(使用每个域对象的存储库)进行典型事务的方法.示例:在 UoW 对象中定义一些存储库对象后,根据它们的状态提交这些存储库. 此外,存储库不应包含任何事务逻辑. 当 insert() 导致创建一个新对象(自动生成的 id)时会发生什么,该对象稍后被同一事务中的另一个对象需要? 工作单元似乎不适用于这种情况.运行 UoW ..

从另一个命令 Handle() 方法中调用命令

您好,我正在使用 Simple Injector DI 库,并且一直在关注一些关于围绕命令模式: 同时......在我的架构的查询方面 容器将管理 UnitOfWork 的生命周期,我正在使用命令对数据库执行特定功能. 我的问题是,如果我有一个命令,例如 AddNewCustomerCommand,它又会执行另一个服务的另一个调用(即发送文本消息),从设计的角度来看,这是可以接受 ..
发布时间:2021-11-17 02:23:08 C#/.NET