Я пытаюсь сохранить (вставить) родительский объект со списком дочерних объектов. Оба объекта используют Guid в качестве первичных ключей. Ключи не допускают значения NULL, и в базе данных не заданы отношения ключей.
Сохранение не работает, возникает исключение, утверждающее, что я пытаюсь сохранить значение NULL во внешнем ключе Parent в таблице Child.
Я ожидал, что nhibernate создаст ключ для Parent и сообщит об этом его дочерним объектам. Это ограничение NHibernate или использования Guids в качестве первичных ключей?
Этот ответ предполагает, что вы должны установить родительский элемент вручную, действительно ли это единственный способ?
Вот мои сопоставления для справки :
Сопоставление родителей:
HasMany(x => x.Children).KeyColumn("ParentKey").Inverse().Cascade.All();
Сопоставление детей:
References(x => x.Parent).Not.Nullable().Column("ParentKey");