내가 작업 솔루션을 가지고 있지만 유창 매핑을 통해이를 달성 할 수있는 방법이 있는지 알고 관심을 가질만한 다른 곳에서 참조되지 않은 경우 계단식 삭제 일대 하나 ..유창함 NHibernate에 많은 쪽이
들어 단순, 내가 예시를 사용합니다 :
책이 삭제되고 지금, 나는 다른 책은 차와 현재 태그를 참조하는 경우 확인하기 위해 DB를 쿼리 비즈니스 사례가있다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"
}
놀랍지도 않지만 다른 책에서 태그를 사용할 때 외래 키 제약 조건 오류가 발생한다.
감사합니다, 마틴