2
我有表3级深(QualificaionType有很多QualificationGroups,其中有诸多限制条件)的映射这样的层次结构:级联用nhibernate删除多个级别?
// QualificationType
HasMany(x => x.QualificationGroups)
.Inverse()
.KeyColumns.Add("QualificationGroupId")
.AsBag()
.Cascade.AllDeleteOrphan()
.Access.CamelCaseField(Prefix.Underscore);
// Qualification Group
HasMany(x => x.Qualifications)
.Inverse()
.KeyColumns.Add("QualificationId")
.AsBag()
.Cascade.AllDeleteOrphan()
.Access.CamelCaseField(Prefix.Underscore);
当我删除资质集团,它会删除与其相关的所有资质。但是,当我尝试删除资格类型时,它会尝试删除所有相关的资格组,但不会删除其资格。
我怎样才能让它一路下降,如果我删除一个类型,它会删除所有的组和所有的资格?我是否需要首先遍历所有组并删除它们?看来这应该能够通过单独的映射来处理。
通知你,我用流利的NHibernate 1.0RTM和NHibernate 2.1