uCommerce NHibernate.ObjectDeletedException: удаленный объект будет повторно сохранен каскадом

Мы используем Umbraco с uCommerce для создания портала B2B

Прислонись спиной к стене с проблемой удаления сущности nHibernate. Всякий раз, когда я пытаюсь удалить SKU продукта (который имеет 3 варианта SKU) из пользовательского интерфейса бэк-офиса uCommerce, мы получаем исключение ниже. Как предполагает исключение, попытались удалить все ассоциации в других классах карты сущностей, но не повезло.

Интересно то, что если я не использую транзакцию scope(_session.BeginTransaction()) в объекте сеанса nHibernate удаление проходит без каких-либо исключений.

Так что мой вопрос / путаница на самом деле заключается в том, что nHibernate по-разному вызывает это исключение при использовании области транзакции?

Exception Details: NHibernate.ObjectDeletedException: deleted object would be re-saved by cascade (remove deleted object from associations)[UCommerce.EntitiesV2.Product#105]
Stack Trace: 
[ObjectDeletedException: deleted object would be re-saved by cascade (remove deleted object from associations)[UCommerce.EntitiesV2.Product#105]]
   NHibernate.Impl.SessionImpl.ForceFlush(EntityEntry entityEntry) +653
   NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.EntityIsTransient(SaveOrUpdateEvent event) +296
   NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.PerformSaveOrUpdate(SaveOrUpdateEvent event) +413
   NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.OnSaveOrUpdate(SaveOrUpdateEvent event) +845
   NHibernate.Impl.SessionImpl.FireSaveOrUpdate(SaveOrUpdateEvent event) +327
   NHibernate.Impl.SessionImpl.SaveOrUpdate(String entityName, Object obj) +223
   NHibernate.Engine.SaveUpdateCascadingAction.Cascade(IEventSource session, Object child, String entityName, Object anything, Boolean isCascadeDeleteEnabled) +257

0 ответов

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