【发布时间】:2014-04-25 09:49:27
【问题描述】:
我有一个可行的解决方案,但很想知道是否有办法通过流畅的映射来实现这一点..
为简单起见,我将使用一个说明性示例:
class Tag {
string name;
IList<Book> books;
}
class Book {
string title;
Tag primaryTag;
}
有一个商业案例,其中书籍被删除,现在,我查询数据库以检查是否有任何其他书籍引用当前标签作为主要标签。如果没有,我删除这本书,然后删除标签,因为它没有在其他任何地方使用。如果标签还在使用,我只删除这本书。
现在轮到您了...您知道使用映射实现此目的的方法吗?我尝试了以下方法:
BookMap : ClassMap<Book> {
...
References(x => x.primaryTag)
.Cascade.All() //the collection in TagMap is set to "inverse"
}
但不出意外,在其他书籍中使用该标签时会抛出外键约束错误。
问候, 马丁
【问题讨论】:
标签: nhibernate fluent-nhibernate fluent-nhibernate-mapping