表没有关系时,流畅的NHibernate级联删除

时间:2013-05-29 12:46:42

标签: fluent-nhibernate

有没有办法(在Fluent NHibernate中)从彼此没有直接关系的表级联删除?我有以下情况:

Relationship Diagram

喜欢发生的事情是,当删除CustomerProduct时,授权会被级联删除(其中auth.Customer = cp.Customer和auth.Product = cp.Product)。

直到最近,授权确实与CustomerProduct有直接的关系,但是它已被打破了,所以我无法解决这个问题。

我希望做一些像(来自CustomerProduct映射)的事情:

        mapping.HasMany<Authorization>(x => x.Authorizations)
            .KeyColumn("ProductID")
            .KeyColumn("CustomerID")
            .Cascade.AllDeleteOrphan();

但显然这不会起作用,因为CustomerProduct中没有授权成员(至少我认为这就是为什么它不起作用^^)。

1 个答案:

答案 0 :(得分:1)

这应该在业务层解决,因为有一条业务逻辑知道如何删除客户与产品的关系。