NHIBERNATE:创建子对象时保存新父对象
-
22-08-2019 - |
题
我正在尝试保存具有多一对一属性映射的记录。我尝试在此处分配一个新创建的父对象(或使用现有的对象,但可以正常运行),但是当它试图将父对象的ID添加到子女表中时,我会遇到错误。说它不能在表中添加空,这是真的,但是我认为Nhibernate足够聪明,可以先保存父对象,即使我正在添加孩子。
映射:
孩子:
<many-to-one name="parent" class="ParentClass" column="parentID" cascade="all"/>
父:
<bag name="DataList" table="ChildTable" lazy="false" inverse="true" cascade="all-delete-orphan">
<key column="parentID" />
<one-to-many class="ChildClass" />
</bag>
基本上,这是Nhibernate可以做的吗?
解决方案
我看不到您的父母映射,但是如果您有倒数= true且级联在那里打开以获取一组子对象,并且当父母在父母的parentid列中允许nulls,那么我会赌注。保存它将正确更新子对象。
其他提示
这种行为可能是由于您的主要键是“分配”而不是由NHibernate生成的。
不隶属于 StackOverflow