场景
城市和街道字段在我的域中不是必需的。
我有一个ValueObject
public class Address : ValueObject
{
public string City { get; private set; }
public string Street { get; private set; }
public Address(string city, string street)
{
City = city;
Street = street;
}
}
我有一个使用ValueObject 的根实体
public class MyRoot : RootEntity
{
public string Name { get; private set; }
public Address Address { get; private set; }
public MyRoot(string name, Address address)
{
Name = name;
Address = address; // TODO Create with null fields if address is null ?
}
}
问题
- 如果传递了null
new Address(null,null)
,我应该创建Address ValueObject吗 - 一般来说,是否有创建ValueObject的最佳实践(总是,当请求时,等等)
如果传递null new,我应该创建Address ValueObject吗地址(null,null)?
否,如果根对象没有要存储的地址,则只应将其Address属性设置为null。
你的代码很好。