NHibernate, сопоставление ассоциации с той же таблицей - PullRequest
0 голосов
/ 05 ноября 2011

У меня есть сущность A , в которой есть столбец Id и ParentId .

В настоящее время я сопоставляю его, используя множествоотношение один к одному <many-to-one name="Parent" column="ParentID" />.

Родительское свойство имеет тип A .Другими словами, Parent является объектом A .

В основном проблема заключается в том, что свойство "Parent" всегда null , но этоневерно, поскольку в базе данных ParentID назначен правильный идентификатор.

Что не так?

Спасибо!

ОБНОВЛЕНИЕ

Я получил подсказку.На самом деле, у меня есть другая сущность, которая отображает множество экземпляров A .

Если я получу другую сущность, у которой есть коллекция A , сущностей выгружено свойство Parent .С другой стороны, если я получу A по его Id , Parent загружается как положено.

Это что-то с другим отображениемзатем:

<set name="Fields" table="A" cascade="all-delete-orphan" lazy="false">
  <key column="AID" />

  <one-to-many
    class="A"
  />
</set>

1 Ответ

1 голос
/ 05 ноября 2011

Это должно работать. Убедитесь, что у вас есть ограничение внешнего ключа для ParentId to Id, и вы можете попытаться добавить class = "A, Assembly" в ваше сопоставление многие-к-одному, чтобы оно было явным.

...