【发布时间】:2012-11-15 22:24:30
【问题描述】:
POCO类在领域驱动设计中有Validate()方法等行为,是真的吗?
【问题讨论】:
-
域类(POCO)当然应该包含相关的行为。
Validate等验证方法是否属于实体类 (POCO) 是有争议的。很多时候,最好让实体始终有效。 -
这种方式会不会导致POCO有依赖?
-
依赖什么?这种方法强制您在尝试创建实体 (POCO) 之前确保您拥有有效数据。例如,可以在 UI 中执行验证。
-
你的意思是实体不是 POCO,对吧? POCO 与域实体正交。您可以拥有非实体 POCO 和非 POCO 实体。
-
关于 DDD,非 POCO 实体可能有点问题,但我可以互换使用 POCO 和实体。更具体地说,我的意思是将实体表示为 POCO。