我刚开始研究领域驱动设计,很可能我对实体/价值划分的理解是错误的,所以如果是这样,请告诉我。
据我了解,由于其身份完全由其属性定义,因此 Address 是典型的值对象。据我了解,这意味着不应该有单独的存储库或地址的数据访问对象。
这给我带来了两难境地,因为在我的例子中,地址包含一个国家,其中一个国家有一个名称和一个国家代码,并且应该从数据库中加载国家代码列表。
我的问题是,我该如何设计这个?我希望人们能够使用 new 运算符创建地址,但我不想为国家/地区创建数据访问对象,如果我这样做了,我当然不想在地址对象中引用它。
我有一些想法,但我想听听任何人可能有的任何建议。