repository-pattern相关内容

静态存储库是使用 NHibernate 的正确方法吗?

我花了晚上剩下的时间阅读 StackOverflow 问题以及一些有关该主题的博客条目和链接.结果证明他们都非常有帮助,但我仍然觉得他们没有真正回答我的问题. 所以,我正在开发一个简单的 Web 应用程序.我想创建一个可重用的数据访问层,以后可以在其他解决方案中重用.其中 99% 将是 Web 应用程序.这似乎是我学习 NHibernate 及其周围一些模式的一个很好的借口. 我的目标 ..
发布时间:2022-01-02 15:57:37 C#/.NET

DDD - 持久性模型和领域模型

我正在尝试学习领域驱动设计 (DDD),并且我想我已经掌握了基本思想.但有件事让我感到困惑. 在 DDD 中,持久模型和域模型是不同的东西吗?我的意思是,我们设计我们的领域和类时只考虑领域问题;没关系.但是在那之后,当我们构建我们的存储库或任何其他数据持久性系统时,我们是否应该为我们的模型创建另一个表示以在持久层中使用? 我认为我们的领域模型也用于持久性,这意味着我们的存储库从查询中返 ..

Spring JPA 中的通用存储库

我们正在开发一个包含大量数据库表的 Restful 项目.虽然对表的操作几乎相同,主要是INSERT/UPDATE/DELETE/FETCH. 我的问题是: 我们是否必须为我们创建的每个实体(域类)创建一个存储库(扩展 JpaRepository),或者可以选择创建一个 GenericRepository 来处理所有实体的所有上述功能?即所有的单个 GenericRepository. ..

带有 Neo4j 的 Spring,GraphRepositoryvs手工界面

我发现有一个叫做GraphRepository的接口.我有一个供用户实现其工作的自制界面的存储库,但我想知道,我不应该实现 GraphRepository 吗?即使实现时间很长,有些方法没用,我认为这是一个标准,我已经重新编码了这个接口中定义的很多方法. 那么我应该编写“YAGNI"代码还是不遵守标准?你有什么建议? 解决方案 您不需要实际实现 GraphRepository 而是扩 ..
发布时间:2021-12-28 17:54:16 其他开发

在 Laravel 中管理关系,遵循存储库模式

在阅读 T. Otwell 关于 Laravel 良好设计模式的书后,在 Laravel 4 中创建应用程序时,我发现自己为应用程序中的每个表创建了存储库. 我最终得到了以下表格结构: 学生:身份证、姓名 课程:id、name、teacher_id 教师:id、姓名 作业:id、name、course_id 分数(作为学生和作业之间的支点):student_id、assignm ..
发布时间:2021-12-26 11:24:30 其他开发

如何正确使用 Unity 将 ConnectionString 传递给我的存储库类?

我刚刚开始使用 Microsoft 的 Unity Application Blocks Dependency Injection 库,但我已经不知所措了. 这是我的 IoC 类,它将处理我的具体类到它们的接口类型的实例化(所以我不必每次在我的控制器中想要一个存储库时都在 IoC 容器上调用 Resolve): 公共类IoC{公共静态无效初始化(UnityConfigurationSect ..

何时使用 PerThreadLifetimeManager?

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

使用存储库模式来支持多个提供者

好吧,不确定这是否是正确的标题,但基本上我在 MVC 应用程序中使用存储库时遇到了很多问题,您可以替换一组存储库,实现不同的数据存储技术,用于另一个. 例如,假设我想为我的应用程序使用实体框架.但是,我也希望在硬编码列表中实现一组测试数据.我想要一组接口(IUserRepository、IProductRepository 等——我们暂时不讨论更通用的 IRepository)这两种方 ..

使用 Dapper 的存储库设计模式

这可能更像是代码审查而不是堆栈溢出的问题. 我在 MicroORM 中使用 Dapper 来检索数据并将其保存到 SQL Server 2014.我在 DTO Proj 中有 DTO 类,这些类表示从数据库中检索到的数据或保存到数据库中的数据. 我正在使用存储库模式,因此在我的服务层,如果需要存储库,我将使用构造函数 DI 注入该依赖项,然后调用存储库上的方法来完成工作. 假设我 ..
发布时间:2021-12-22 08:40:43 C#/.NET

MVC 存储库模式设计决策

我有一个 asp .net MVC 应用程序,最近开始使用服务验证层实现存储库模式,很像 这个. 我一直在为我创建的每个模型创建一个存储库/服务.这是矫枉过正吗?相反,我是否应该为每个为许多不同模型提供 CRUD 的逻辑业务领域创建一个存储库/服务? 对我来说,似乎我要么用许多文件把项目树弄得乱七八糟,要么用许多方法把一个类弄得乱七八糟.6 一个方式半打另一个.你能想出任何好的论据吗? ..

Xamarin 项目中 SQLite-Net 的通用存储库

我想知道是否有一种方法可以为我的 Xamarin 项目编写通用存储库,而不是为我的对象中的每个实体编写不同的存储库.Xamarin Tasky Pro 示例有一个存储库用于任务实体,因为这是它唯一拥有的实体. 在我自己的项目中,我有多个实体,所以我的问题是如何制作以下 Customer Repository 成为通用的,以便 ProductManager、EmployeeManager 等可 ..
发布时间:2021-12-14 16:45:23 C#/.NET

DDD - 实体不能直接访问 Repositories 的规则

在领域驱动设计中,似乎有很多 实体不应访问的协议直接存储库. 这是否来自 Eric Evans 域驱动设计书,还是来自其他地方? 对于其背后的推理,哪里有一些很好的解释? 编辑:澄清:我不是在谈论将数据访问从业务逻辑分离到一个单独的层的经典 OO 实践 - 我在谈论在 DDD 中实体不应该谈论的特定安排到数据访问层(即它们不应该保存对 Repository 对象的引用) 更 ..

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

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

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

我正在尝试在我的 Windows 窗体应用程序中实现 IoC.我的选择落在了 Simple Injector 上,因为它又快又轻.我还在我的应用程序中实现了工作单元和存储库模式.这是结构: 数据库上下文: 公共类 MemberContext : DbContext{公共成员上下文(): base("名称=成员上下文"){ }公共数据库集成员{得到;放;}protected override ..

使用实体框架模型将不同项目中的POCO类生成到项目中

我正在尝试使用 VS2010 在 EF4 中使用存储库模式. 为此,我通过右键单击实体模型设计器并单击添加代码生成项来使用 POCO 代码生成.然后我选择 POCO 模板并获取我的课程. 我希望能够将我的解决方案组织成实体 (POCO) 类的单独项目和实体模型和存储库代码的另一个项目. 这意味着我的 MVC 项目可以将 POCO 类用于强类型视图等,而不必了解存储库或必须对其进行 ..

ObjectStateManager 中已存在具有相同键的对象.ObjectStateManager 无法跟踪具有相同键的多个对象

使用具有通用存储库模式的 EF5 和 ninject 进行依赖注入,并在尝试使用我的 edmx 的存储过程将实体更新到数据库时遇到问题. 我在 DbContextRepository.cs 中的更新是: public override void Update(T entity){如果(实体==空)throw new ArgumentException("不能添加空实体.");var ent ..

EF 包括其他实体(通用存储库模式)

我在 Entity Framework Code First 之上使用通用存储库模式.一切正常,直到我需要在查询中包含更多实体.我必须成功包含一个实体,但现在我不知道如何包含多个实体.看看我到目前为止有什么: public IQueryableGetQuery() where TEntity : 类{var entityName = GetEntityName();return _objectC ..