비슷한 질문이 있지만, 답변을 찾을 수 없습니다. 나는 다음과 같은 유창함 관계를 매핑 한 : 나는 비록 부모 (필터 개체를) 삭제하려고하면Fluent NHibernate Cascade Delete Error
HasMany<UserFilter>(x => x.UserProjectFilters)
.KeyColumns.Add("UserProfileID")
.Cascade.All()
.AsSet()
.Inverse()
.Cache.ReadWrite();
가, 삭제는 계단식으로하지 않습니다; 예외가 표시됩니다 : "DELETE 문이 REFERENCE 제약과 충돌했습니다 ...". NH 프로파일 러에서 Delete 문은 부모에 대해 생성되지만 자식에 대해서는 생성되지 않습니다. 나는 모든 자식에 대한 삭제가 부모보다 먼저 수행되기를 기대합니다. 내가 도대체 뭘 잘못하고있는 겁니까?
다음 관계의 UserProfileFilter 끝입니다 :
References<Filter>(x => x.Filter)
.Column("FilterID")
.LazyLoad()
.Cascade.SaveUpdate();
감사합니다! 앤디
보십시오. 관계를 단순화하면 문제를 해결하는 데 도움이 될 수 있습니다. SQL을 보면 부모 (필터)를 먼저 삭제하려고합니까? –