域seedwork是一个具有通用域逻辑的独立项目:实体,VO,存储库和UoW合同的基础,规范等。
但我无法确定下列地点:
答案 0 :(得分:2)
我避免尝试在一个地方进行验证。 一种尺寸适合所有的概念通常是无稽之谈,特别是在DDD中。您可以将最基本的验证添加到实体中,以确保您的实体永远不会处于无效状态。除此之外,您的验证逻辑可能应该在您验证的位置,即UI验证逻辑,应该进入UI /表示层。
业务规则应该放在您的域模型中。
答案 1 :(得分:0)
在我提出问题时,答案来了。如果我错过了什么,请纠正我。
域种子必须包含仅由Domain使用的公共逻辑。可以在多个层中使用的逻辑必须是横切的。
因此,Validator合同和实施必须是跨部门和业务规则评估者。验证规则库和业务规则库仅由域使用,并且必须位于域种子工作中。
<强>更新强> 还有另一种选择:Validator和Business Rules Evaluator是生活在Domain seedwork中的基础,用于CustomerCanPersistedValidator等特定实现。