Я пытаюсь понять, почему NHibernate обрабатывает каскадирование один-ко-многим (используя cascade = all-delete-orphan), как он это делает. Я столкнулся с тем же вопросом, что и этот парень:
Принуждение NHibernate к каскадному удалению перед вставками
Насколько я могу судить, NHibernate всегда выполняет вставки сначала, а затем обновляет, а затем удаляет. Для этого может быть очень веская причина, но я не могу для жизни понять, что это за причина. Я надеюсь, что лучшее понимание этого поможет мне придумать решение, которое я не ненавижу:)
Есть ли хорошие теории в этом поведении? В каком сценарии лишение сирот сначала не будет работать? Все ОРМ работают таким образом?