首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >领域服务领域模型的验证?

领域服务领域模型的验证?
EN

Stack Overflow用户
提问于 2016-03-11 07:39:02
回答 1查看 600关注 0票数 0

我正在读一本书“企业架构应用程序(Dino Esposito)”。它提出了一个关于验证的问题。

域模型可以有一个属性CanBeSaved,它调用域模型的calls ()方法。一切都很好,除了复杂的情况。例如,一个客户模型,它需要一个唯一的客户代码(例如。000542)。您只能通过数据库访问来检查这一点。将验证始终放在域服务中不是更好吗?因此,您只有一种方法来检查聚合是否处于有效状态?如果两者都使用,开发人员可以“忘记”为客户使用域服务验证。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-11 09:38:44

我发现拥有总是有效的实体比依赖外部验证对象更好。

尽管如此,唯一的检查是一个例外,因为它通常不是聚合本身可以自行决定的东西,您必须查看所有现有的聚合,以查看是否已经使用了该值。我所做的是在创建实体之前检查该值的可用性,并在数据库中添加一个约束,在持久化时验证唯一性。您还可以尝试找到包含所有实体的域概念,并使其成为具有所有代码列表并强制执行唯一性不变的聚合。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35934713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档