【发布时间】:2012-07-11 18:08:54
【问题描述】:
我想我理解 Value Objects(它们没有概念上的身份,其属性集是其定义等)以及它们与 Entities 的区别,但我仍然不知道直接分配给 Entity 属性的原始类型 (int, string ...) 的值是否也被视为配音。
例如,在下面的代码中,分配给Person.Name 的对象(类型为Name)是一个VO,但是是分配给Person.FirstName、Person.LastName 和@987654325 的值@ 也被视为 VO?
public class Person
{
public string FirstName = ...
public string LastName = ...
public int Age = ...
public Name Name = ...
...
}
public class Name
{
public string FirstName = ...
public string LastName = ...
public int Age = ...
}
谢谢
【问题讨论】:
-
视情况而定。我会说 First/LastName 可能最终出现在 Name VO 中,而 Age 将在它自己的 VO 中表示。但同样,如果没有使其有价值的特定背景和行为,很难说。
标签: domain-driven-design value-objects