仅删除表之间的关系,而不删除数据

时间:2011-12-15 21:05:02

标签: database nhibernate nhibernate-mapping

我正在使用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

1 个答案:

答案 0 :(得分:1)

删除inverse="true"。该属性看起来是复制和粘贴的,意味着您正在处理其他方面的关系,在这种情况下不存在。

相关问题