我是 DDD 和 NHibernate 的新手。
在我当前的项目中,我有一个实体 Person,它包含一个值对象,比如说 Address。今天,这很好。但也许有一天我会要求我的值对象(在本例中为地址)必须成为一个实体。
在尝试以 DDD 方式对此进行建模之前,采用更以数据为中心的方法,我有一个带有 Id 的表 Person,以及另一个表 Address,其 PK 实际上是 FK,它是一个人的 Id(即,一对一的关系)。
我一直在阅读,当我将值对象映射为组件时,它的值将被映射为实体表上的列(因此,我不会有一对一的关系)。
我的想法是,当需要时,我只需向我的地址表添加一个代理键,然后它就成为一个实体。
我应该如何使用 NHibernate 来设计它?我应该已经将我的地址对象设置为实体吗?
抱歉,我什至不知道我的问题是否清楚,我真的迷失了。
在我们正在构建的系统中,我们将值对象放在单独的表中。据我所知,NHibernate 要求id
必须添加到对象中,但我们忽略这一点并将该对象视为系统中的值对象。您可能知道,值对象是您不需要跟踪的对象,因此我们只需忽略id
在对象中。这使我们能够更自由地按照我们想要的方式对数据库进行建模,并按照我们想要的方式对领域模型进行建模。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)