我正在使用NHibernate进行以下类的数据库连接:
Class A
{
public int Id{get;set;}
public List<B> InnerElements{get;set;}
}
Class B
{
public int Id{get;set;}
public string Description{get;set;}
...no reference to the parent
}
并且在DB中我有As(到A类),Bs(到b类)和ABs表,其中表AB具有自动增加的id,以及A和B实体的ID。
类的配置文件是:
A类
...other properties mapped
<bag name="InnerElements" table="ABs" cascade="all" inverse="true">
<key column="AID" />
<many-to-many class="B" column="BID"/>
</bag>
而在B班,我对A班没有任何反馈。
当我从类型A的实体中删除InnerElements中的B元素,并尝试将修改后的实体保存/更新回DB时,内部ABs表保持不变。 如何更改(在配置文件中或其他方式)从内部表中删除条目?我不想从DB中删除任何A或B条目。
提前致谢, Tamash
答案 0 :(得分:1)
删除inverse="true"
。该属性看起来是复制和粘贴的,意味着您正在处理其他方面的关系,在这种情况下不存在。