Удаленный объект будет повторно сохранен каскадом (удалить удаленный объект из ассоциаций) в nhibernate

Я продолжаю получать эту ошибку при попытке удалить запись из моей таблицы. Вставка и обновление отлично работают, кроме удаления.

Вот мои настройки:

Отображения:

 HasMany(x => x.Items).AsList().AsBag().LazyLoad().Cascade.AllDeleteOrphan();   

GetMethod:

  IRepositoryWithTypedId<BOD.Entities.Item, Guid> Rep = RepositoryFinder.For<BOD.Entities.Item, Guid>();
         BOD.Entities.Item tag = Rep.Get(new Guid("0A495241-082F-4314-8B79-000A524FC666"));

         Rep.Delete(tag); 

Я также пытался использовать:

 Repository().DbContext.CommitTransaction();
 Repository().DbContext.CommitChanges();

Эти два все еще вызывают ошибки. У кого-нибудь есть предложения?

1 ответ

Решение

Это потому что tag содержится в некоторой коллекции, вы должны удалить ее из этой коллекции, чтобы фактически удалить ее. В противном случае, когда вы сохраните собирающую сущность, тег будет сохранен снова.

Другие вопросы по тегам