首页 > TAG信息列表 > domain-driven-design
C#-设计帮助-对象修改并保存另一个对象
我在思考设计问题时遇到了一些麻烦,并认为社区可能能够帮助我指出正确的方向.我正在为公司的员工管理系统建模,并遇到了一个困扰我的设计问题. 这是场景: 我有一个Employee类,该雇员类具有Office对象列表(该雇员在哪里工作以及已经在哪里工作).我需要创建在办公室之间转移员工的能力领域驱动的设计何时足够?
关于DDD的大多数书籍都谈到将技术与业务结合起来.因此,您具有订单和付款业务规则等. 如果我写技术申请书该怎么办.例如,如果我编写了一个像应用程序这样的视觉工作室. DDD是否不相关,或者我可以说我的领域是“应用程序开发”并确定参与者(“解决方案”,“文件”)和业务规则,因此我在域和存储库之间共享实用程序对象
我目前正在建立一个使用MySQL数据库的框架.我无法使用实体框架的MySQL实现,因此我试图找出概括搜索和分页功能的最佳方法. 最简单的解决方案是使用带有签名的存储库方法,例如: IList<Blah> GetSomething(string _query, int _page,C#-域模型实体与数据实体,在软件体系结构中之一或两者
**Update 2** 我有一个典型的3层结构(UI /域/数据层)的项目.在域层和数据实体层中同时具有域模型实体的利弊是什么? 更改为其他数据库的可能性很小.仅将数据层中的数据实体作为域模型实体的利弊是什么?如果使用ORM,有什么区别(使用ORM(NHibernate)时同时拥有两个实体是一种很好的做DDD和C#-限制对子实体的访问
我几乎可以肯定,我已经忽略了一些简单的事情,但是并没有点击. 我有一个Person实体(Person汇总的根).我还有一个用于认证和授权(Auth)的子实体,该实体具有角色列表和权限列表. 我希望通过在根上使用AddAuthRole等方法通过根来管理对角色和权限的修改. 这非常简单,但是我将如何做而又PHP-在CQRS中反规范化/投影数据
我正在研究CQRS(通常是DDD),但不确定如何实现它的特定部分. 我了解分离命令和查询的好处;出于这个原因,让我们说我也在使用事件源,并且我对每个实体都有一个很好的历史记录列表. 据我了解,构建视图的数据存储可以采用任何形式,对性能进行非规范化是完全可以接受的. 我的问题是如何实c#-聚集根具有复合主键的存储库
信息库应该作为聚合根的边界,即IRepository< TAggreagte>.将提供CRUD功能,以事务方式将数据保存到DB.到现在为止还挺好. 但是,如果聚合具有复合主键怎么办? 在我的问题中,它是一个Identity INT列以及一个SMALLINT序列号. (这是数据库设计,不是我的主意!) 我见过的存储库示例都有例如C#-了解DDD(服务,聚合,实体,存储库和规范)
我从DDD开始,尝试将其应用到当前项目中,但是正如您可以假设的那样,我有成千上万的问题. 在这里,我提供一个示例域,以便我可以提出不同的问题,并作为练习,您可以在上面解释如何制作东西. 我们的假设系统必须控制公司以及每个公司的工作人员. 域. >公司(ID,名称,地址) >员工(身份证,CodeGo.net>如何查询除ID以外的其他属性聚合根?
为了澄清起见:BuckupableThing是其中写入了程序的某些硬件设备(已备份). 更新的说明:这个问题更多的是关于CQRS / ES的实现,而不是DDD建模. 假设我有3个聚合根: class BackupableThing { Guid Id { get; } } class Project { Guid Id { get; } string Description { gejava-Spring Data和DDD-与持久性无关的域模型
您好,具有与持久性无关的单独的持久性模型和域模型是一种常见的模式.我想了解如何在Spring Data中解决此模式. 我想像的方式是,如果我们使用没有Spring数据的常规休眠,那么我们将拥有可以与域对象一起工作的存储库,这些对象将在内部映射到ORM模型,然后将触发持久性. 如何使用Springjavascript-Node.js-从域模型抽象猫鼬模型
我正在节点中建立一个REST API.我正在遵循通用的ddd体系结构,即存储库,域模型,实体,值对象等. 我为满足持久性需求而选择montodb,并使用mongoose与dB引擎进行交互. 在猫鼬中,我们根据定义的架构创建模型.我试图弄清楚如何将我的域模型从猫鼬模型中分离出来.我想实现值对象,但我看不如何将某些行为限制为特定类的实例的子集?
我正在为食谱应用程序开发域模型,并且遇到了问题. 该应用程序具有多个能够充当成分的实体,其中两个是:产品和食谱(配方可以是其他食谱中的成分).通常,我会将与成分相关的功能封装到这些实体每个都可以实现的接口中.问题在于,尽管所有“产品”实例都可以是成分,但“食谱”实例的子集PHP-您是否将存储库注入域对象?
在一天学习10个星期之后,经过一周的学习,我开始感觉自己开始非常了解它,直到今天阅读本文为止: http://blog.fedecarg.com/2009/03/15/domain-driven-design-the-repository/ 该文章的作者说您将存储库注入到Domain对象中,这对我来说没有任何意义. 我不是这个主题的专家,但是我认为java-用Hibernate保存后DDD找出子元素的ID
public class AggregateRoot { private Integer id; private Set<Child> children; } public class Child { private Integer id; private String name; } 想象一下,您需要保存Child并将其ID发送到某个外部系统.在DDD中,您将使用与以下代码相似的代码来保持久性逻辑应属于基础结构层吗?
好吧,我的应用程序遵循DDD设计原则.它是一个ASP.NET MVC应用程序,其中MVC Web应用程序是表示层(尽管我将控制器移到了应用程序层).它还具有主要是应用程序服务,用例等的应用程序层.在应用程序层之上是域模型所在的域层.然后是基础架构层,它位于所有其他事物之上,并且应该不依赖于其php-将DDD与事件源混合在一起
我无法理解将DDD与ES混合在一起的概念.我认为事件是域方面的一部分.鉴于将它们从存储库发布到外部世界并保持模型的纯净和简单没有问题.但是除此之外,还必须有可能以特定的聚合重放它们.这是我的问题发生的地方.我想让我的领域模型保持纯净而简单,而这些对象仍然与lib / framework单独的数据模型时,如何从存储库返回域对象?
更新资料 我的研究告诉我,我应该使用数据映射器:https://martinfowler.com/eaaCatalog/dataMapper.html.数据映射器是否已注入到这样的存储库中:http://www.rantdriven.com/post/2009/09/01/Using-the-Repository-Pattern-with-the-Command-and-DataMapper-Patterns.aspx和RepositoryPHP DDD如何命名入口点方法?
遵循DDD设计原则时,在php中命名服务中的入口点方法的最佳实践应该是什么. 与班级相同: class GetSinglePerson { ... public function getSinglePerson($personId) { } } 命令模式: class GetSinglePerson { ... public function execute($personC#使用动态构造的事件处理程序处理DDD域事件
我正在使用带有EF Core 2.0的ASP.NET Core 2.0构建应用程序.至于在我的域中解耦不同种类的逻辑,我使用DDD(域驱动设计)的域事件.让我们深入研究实现,看看有什么,然后我将讨论我的问题. 首先,让我们看一下与域事件相关的类的通用实现.首先是标记接口IDomainEvent: public interfacec#-如何定义和执行约束分层实体的复杂规则
如果我有一项政策,并且该政策应包含部分(固定编号). 我的版块是4个预定义的版块: >工作时间规定. >借口.>班次.>时间表. 每个部分的固定属性与其他部分的属性不同.如果我可以用类比说明: >政策—>人体.>部分—>(手臂,腿,头)>每个部分都各不相同,例如:(头部包含眼睛,耳朵等…而不是手臂C#-TDD和DDD入门
我刚刚读完Eric Evans的“域驱动设计:解决软件核心中的复杂性”,并且试图编写我的第一个以域为中心的应用程序(使用C#). 我们的服务台将使用该应用程序来跟踪计算机向用户的分配. 我已绘制了一个简单的类图以反映部分域.看起来像这样… Class diagram showing two classes: Owner anjava – 域驱动设计 – 可测试性和“新”关键字
我一直在尝试在我的新项目中遵循域驱动的设计方法.我一直使用Spring进行依赖注入,这很好地将我的应用程序代码与构造代码分开,然而,使用DDD我似乎总是有一个域对象想要创建另一个域对象,这两个域对象都有状态和行为. 例如,给定媒体文件,我们希望将其编码为不同的格式 – 媒体资产调java – Hibernate Spring OneToMany – ManyToOne域驱动设计
我有2个实体“用户”和“组”.实际上这是一个ManyToMany关联,但我想在关系表中保留额外的信息,如created或userid. 所以我发现我必须引入一个代表关系表“UserGroup”的新实体. 表格: 用户ID,名称,pw 组ID,名称 usergroup id,userid,groupid,created,createduserid 实体: @Entity @Tphp – 域模型MVC中的本机数据库查询
我有一个MVC应用程序,其中包含一个包含实体,数据映射器和服务类的模型层.到现在为止还挺好.但是现在我有一个控制器需要显示一个报告,其中包含来自多个数据库表的数据,与我模型中的任何实体无关.该报告是根据包含连接,SUM / AVG选择的高级MySQL查询构建的.我想要的只是一个数据数组php – 用Symfony表单分离关注点
我最近一直在尝试使用Symfony 2表单,这对于简单表单非常有用. 但是 – 在选择框或类似的东西中使用 – 我经常需要表单中的关联实体列表.在几篇博文和Symfony文档中,他们提出了类似这样的内容…… //BlogPostType implements FormTypeInterface public function buildForm(FormBui