我对级联一对多关系有疑问。我的一个表包含一个组件,该组件链接到另一个表,这是我的画廊(画廊与其他表有多种关系。)。然后该组件在我的一个基类中使用。我使用实体开发人员生成代码,并通过以下几行完成:Baseinfo.hbm.xml
...
<component>
...
<many-to-one name="LocationMap" class="..." cascade="all">
<column name="ImageId" not-null="true"/>
</many-to-one>
</component>
……
由于我有时需要将其设置为 null,因此我将 not-null 更改为“false”。一切正常,直到我遇到删除记录。将 LocationMap 设置为 null 后,我检查了数据库,发现图像记录仍然存在。经过一些论坛后,我确实还在级联选项中添加了“delete-orphan”,man: cascade="all,delete-orphan" 但它没有用,我还将应用程序置于调试模式,并在执行保存代码后,我尝试了这在即时窗口上: session.Flush(); 那没有用...我不想经历丑陋的编码,并且记得删除以后代码的记录,因为它不起作用...,我该怎么办?!