我发现了一些类似的线程,但都得到了我的代码作为答案。
我正在使用一对多关系。
父映射:
HasMany(x => x.Targetings).KeyColumn("fk_campaign_id").Cascade.AllDeleteOrphan().Inverse().AsBag();
孩子是:
References(x => x.NhCampaign).Column("fk_campaign_id");
父亲有一个孩子的名单。一切正常 - 插入和更新。但是由于某种原因,当我清空父亲中的列表或只想删除列表项时,它不会从数据库中删除子项。即使列表为空。
这就是我更新的方式:
using (ISession session = NHibernateHelper.OpenSession())
{
using (ITransaction transaction = session.BeginTransaction())
{
session.Update(FatherObject);
//session.SaveOrUpdate(oCampaign);
transaction.Commit();
}
}
我在这里做错了吗?