我有两个具有父/子关系的实体(多对一)。
如果我想更新父级并删除其子级列表,它将尝试查找所有指定的记录并将其FK设置为Null,以便切断它们之间建立的关系。我完全没有这种方式的任何问题,因为我相信nhibernate有这种能力来处理孤立的记录,虽然这里有一点问题。
问题: FK列不可为空,因此无法设置为Null。
代码
<bag name="Child" inverse="false" lazy="false" access="property" cascade="All-delete-orphan" batch-size="1000">
<key>
<column name="ChildCol" not-null="true"/>
</key>
<one-to-many class="ChildEntityAddress"/>
</bag>
<many-to-one name="Parent" class="ParentEntityAddress" cascade="none" fetch="join">
<column name="ParentCol" not-null="true"/>
</many-to-one>
有没有解决方案来避免这个问题?
答案 0 :(得分:0)
如果要将null设置为数据库中的列,则需要将其设为可为空。