nHibernate: сохранение нового родительского объекта при создании дочернего объекта

StackOverflow https://stackoverflow.com/questions/882239

Вопрос

Я пытаюсь сохранить запись с сопоставлением свойств "многие к одному".Я пытаюсь назначить здесь только что созданный родительский объект (или использовать существующий, но это нормально работает), но я получаю сообщение об ошибке, когда он пытается добавить идентификатор родительского объекта в дочернюю таблицу.Сказать, что он не может добавить NULL в таблицу, что верно, но я думал, что nHibernate был достаточно умен, чтобы сначала сохранить родительский объект, даже если я добавляю дочерний.

Сопоставления:

Ребенок:

родовое слово

Родитель:

родовое слово

В принципе, может ли это nHibernate?

Это было полезно?

Решение

Я не вижу вашего родительского сопоставления, но готов поспорить, если у вас включен inverse= true и каскадирование для набора дочерних объектов, и вы разрешаете нули в столбце parentID вашего дочернего объекта, когдаРодитель успел сохранить его, чтобы правильно обновить дочерний объект.

Другие советы

Такое поведение может быть вызвано тем, что ваш первичный ключ «назначен», а не генерируется Nhibernate.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top