repository-pattern相关内容

DDD资料库和工厂

在我的应用程序中有几层。 在本主题中,重点是域和基础结构层。 我在域层中具有存储库接口ClientRepositoryInterface。 并且我已经在基础结构层中实现了此接口ClientRepositoryImpl。 但是要在对象存在的周期的中间重新构造该对象,我需要工厂(ReconstitutionClientFactory )。 致电工厂将在资源库中。 Eric Evan ..

只读数据库视图如何适应存储库模式?

示例:您的数据库具有一个名为“ CustomerOrdersOnHold”的SQL视图。该视图返回特定客户和订单数据字段的混合过滤。您需要从应用程序中的此视图中获取数据。对这种视图的访问如何适应存储库模式?您将创建“ CustomerOrdersOnHoldRepository”吗?这样的只读视图是否被认为是聚集根? 解决方案 我宁愿分离读取存储库,最好甚至更改它的名称为Finder或Re ..

使用Linq to Sql和C#的存储库模式的实现示例

我正在寻找一个遵循我的ASP.net MVC应用程序的域驱动设计原则的存储库模式实现示例/资源。有没有人有一个很好的例子或可以共享的学习资源?项目已通过Linq到C#在SQL中实现了存储库。 http ://blog.wekeroad.com/ 来源可用。 他不太做严格的DDD,但他的TDD通常会将他驱逐出该方向。一个警告是,他有多个没有聚合根的存储库,因此它与教科书中的示例相去 ..
发布时间:2020-10-25 20:50:42 其他开发

域驱动设计中的规范模式

我一直在努力解决与DDD相关的规范问题,并且已经阅读了很多有关DDD以及规范和存储库的信息。 但是,如果尝试在不破坏域驱动设计的情况下将所有这三个方法结合起来,则会出现问题。归结为如何考虑性能而应用过滤器。 首先有几个明显的事实: 获得DataAccess / Infrastructure层的存储库 域模型表示业务逻辑并转到域层 数据访问模型表示持久性层并转到Persista ..

与DQL的学说2限制关联

Doctrine 2.1中似乎有一个不为人知的地方,要返回一个关联的子集 并不容易。 http:// www。 doctrine-project.org/docs/orm/2.1/en/reference/limitations-and-known-issues.html#restricing-associations 文档建议编写一个存储库查找方法,这很有意义,因为那是我要做的第一 ..
发布时间:2020-10-25 04:58:59 PHP

从Doctrine 2中的存储库中选择特定的列

首先,我们知道,取决于查询中的列数,可能会增加响应时间。 在Doctrine中,调用以下存储,这具有关系 公共功能index() { } $ this ->学生= $ this->模型-> getRepository()-> findAll(); } 但是考虑到我之前给出的声明,该存储库的返回是 还有其他问题。我可以选择要返回此存储库的列吗?例如,存储库 ..
发布时间:2020-10-25 04:30:57 PHP

汇总根DDD / UoW /回购/服务

我对存储库的聚合对象有一些疑问。 我正在使用DDD / UoW / Repo和Service模式进行Rest Service。我们新的云Web应用程序将使用此服务。为此,我们还必须同步仍在生产中的旧数据库中的数据。我们创建了一个“ SyncService”,可以读写云中的数据,甚至可以读写到地球。 在我的Rest / DDD设计中。而且我不希望在这些基础上运行业务逻辑,因此在原始测试项 ..

存储库模式标准化方法

我正在尝试找出存储库模式的正确定义。 我最初的理解是(非常愚蠢) 将业务对象与数据对象分开 在数据访问层中标准化访问方法。 我确实看到了两种不同的实现方式,并且在线上没有正式的示例,我见过的示例被藏在书中。 实现1: 公共接口IRepository { List得到所有(); void Create(T p); void Update(T ..
发布时间:2020-10-21 01:24:33 C#/.NET

依赖注入的存储库和专用存储库的装饰器链接

现在,我正在尝试找出一种使事情变得更聪明的方法,在这样做的过程中,我设法做到的是在一天之内使用一整瓶Exedrin。 假设我有一个名为IRepository的接口。 公共接口IRepository { T Get(int id); void Add(T value); void Update(T value); void Delete(T value); ..

CRUD的通用类-使用存储库和工作单元模式在C#中进行依赖注入

尝试创建一个通用存储库类,以使用依赖项注入,工作单元和存储库模式在C#中实现基本的CRUD操作。 我对这些概念很陌生。以下是我的代码。 公共接口IUnitOfWork { IApplicationUserRepository Users {get; } ICompanyRepository公司{get; } void Complete(); } 公共类Un ..

何时使用PerThreadLifetimeManager?

我正在遵循下面链接的示例,以设置与我的服务层一起使用的统一性。我的项目的设置与本文中的非常相似,并且我了解所有内容,但为什么在注册服务依赖项时确切使用了PerThreadLifetimeManager。请记住,我还使用了在我的服务层中也使用的通用存储库和单元。大多数统一示例都使用默认(瞬态)生存期管理器,并且由于我的设置与下面的类似,所以我想知道为什么我应该使用PerThreadLifeimeMa ..

将多个DbContext与通用存储库和工作单元一起使用

我的应用程序越来越大,到目前为止,我只有一个 MyDbContext ,其中包含我的应用程序中需要的所有表。我希望(出于概述的目的)将它们分成多个 DbContext ,例如 MainDbContext , EstateModuleDbContext , AnotherModuleDbContext 和 UserDbContext 。 我不确定如何完成此操作,因为我现在正在使用依赖注入(ni ..

关于存储库模式的一些我根本不了解的事情

我已经阅读了很多关于什么是存储库的主题,但是仍然困扰着我。 据我了解,存储库之间的唯一区别和传统数据访问层是存储库的查询构造功能(即 Query Object pattern )。但是,当阅读以下 Repository Pattern 的定义时,即使我们没有实现 Query Object pattern ,似乎我们仍然可以拥有 Repository : a) 发件人: 存储库是 ..
发布时间:2020-10-15 21:20:20 其他开发

如何使用Dapper实现工作单元模式?

当前,我正在尝试将Dapper ORM与工作单元+存储库模式一起使用。 我想使用工作单元,而不是简单的dapper存储库我的插入和更新需要一定程度的交易处理。我一直找不到任何有用的示例,因为大多数人似乎都使用Entity Framework,并且在工作单元中存在泄漏问题。 有人可以指出正确的方向吗? ? 解决方案 此 Git项目非常有用。我从相同的位置开始,并根据需要进行了一些 ..
发布时间:2020-10-14 23:07:09 其他开发

使用通用CRUD函数处理复杂实体(关系)的最佳方法

我尝试使用此泛型函数来插入-更新实体,但我一直认为也许我这样做完全不对,所以我想征询您的意见/建议。 这些是我的插入&更新功能: 公共静态布尔值Insert(T项目),其中T:类 { 使用(ApplicationDbContext ctx = new ApplicationDbContext()) { 试试 { ctx.Set()。Add(item); ct ..
发布时间:2020-10-11 20:23:46 其他开发

关于ReadModels和Domain的DDD / CQRS混淆

因此,经过大量阅读之后,我现在意识到,复杂的报告功能不属于您的典型存储库,并且需要某种专用的“ Finder”来返回仅用于报告的只读对象。 我不清楚什么是“ Finder”类及其关联的ReadModel类应该放在我的项目中?查找器是否像存储库一样,您在基础结构程序集内部拥有查找器的接口以及具体的Readmodels? 这些类在哪里? 解决方案 我通常有一个逻辑查询“图层”。这是 ..
发布时间:2020-10-11 01:22:47 其他开发

存储库模式-缓存

我不确定应该在我的存储库模式中在哪里实现缓存。 我应该在服务逻辑中还是在存储库中实现它? p> GUI-> BusinessLogic(服务)-> DataAccess(存储库) 解决方案 我将在存储库/数据访问层中对其进行处理。原因是因为它不取决于从何处获取数据的业务层,即存储库的工作。然后,存储库将根据数据访问逻辑的情况,决定从何处,从缓存(如果不是太旧)或实时数据源中获取 ..
发布时间:2020-09-28 05:00:41 其他开发

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

我想知道是否有办法为Xamarin项目编写通用存储库,而不是为对象中的每个实体编写不同的存储库。 Xamarin Tasky Pro 示例具有一个用于任务实体,因为它是它唯一的实体。 在我自己的项目中,我有多个实体,所以我的问题是如何使 成为实体。跟随客户资料库变得通用,以便ProductManager,EmployeeManager等可以使用它。如果您知道示例或博客文章,请为我指明正确的 ..
发布时间:2020-09-25 23:21:59 C#/.NET