我正在学习FluentNHibernate,到目前为止,我还没有将FK指定为属性字段,但我让它们从映射中自动生成。
但这就足够了吗?在我看来,在这种情况下,如果我想保存一些对象,我只能通过保存整个聚合根来保存(新对象)。虽然我有时认为只保存一些较低级别的对象更合适。
所以我认为这个问题涉及到聚合根的使用。它们是如何组织起来的?我认为一个聚合可以是另一个聚合的一部分,这意味着您实际上可以保存较低级别的聚合,而无需保存整个根。这是真的吗?在这种情况下,如果我们处理一个新添加的实体,我们不需要指定FK吗?因此,这个字段必须在我们的类中编码,而不是像我现在所做的那样简单地自动生成?
发布于 2011-06-07 01:01:21
如果您确实希望保存单个实体,而不是聚合根,则需要定义引用父实体的属性,从而允许您设置该属性并保存单个实体。就我个人而言,我不认为它有任何问题。虽然很明显是this is not good DDD practice。
要保存一个较低级别的实体,而不是它的聚合根,您无论如何都需要指定父实体。我想这就是为什么直接使用root更好的原因。
https://stackoverflow.com/questions/6254554
复制相似问题