我有2个类有多对多的关系。 我想要发生的是,只要我删除一方只有关联记录将被删除,无论我删除哪一方。nhibernate多对多删除
简化模型:
类:
class Qualification
{
IList<ProfessionalListing> ProfessionalListings
}
class ProfessionalListing
{
IList<Qualification> Qualifications
void AddQualification(Qualification qualification)
{
Qualifications.Add(qualification);
qualification.ProfessionalListings.Add(this);
}
}
流利使用自动映射覆盖:
void Override(AutoMapping<Qualification> mapping)
{
mapping.HasManyToMany(x => x.ProfessionalListings).Inverse();
}
void Override(AutoMapping<ProfessionalListing> mapping)
{
mapping.HasManyToMany(x => x.Qualifications).Not.LazyLoad();
}
我想级联和反向设置的各种组合,但永远无法到达那里。 如果我没有级联并且没有反转,我会在我的集合中获得重复的实体。 在一侧设置反向会使重复消失,但是当我尝试删除限定条件时,我会得到一个“已删除的对象将通过级联重新保存”。
我该怎么做?
我应该负责清除我删除的每个对象的关联吗?
他不希望被删除的对象,只是他们之间的链接。 – 2010-06-04 09:17:12