Отображение NHibernate с промежуточной таблицей - PullRequest
0 голосов
/ 24 августа 2010

Я новичок в NHibernate и сталкиваюсь с некоторыми проблемами с отображением.

Допустим, у меня есть таблица:

People

PersonID
PersonName
PersonAge

Затем у меня есть другая таблица

ParentRelaitions

RelationID
Parent (This is a PersonID)
Child (This is also a PersonID)

Что я действительно хочу извлечь из этого, так это такой объект

public class Person
{
string name;
int age;
IList<Person> Children; //This is a list of all the persons children
}

Как бы я настроил это?Я совершенно растерялся и, похоже, не могу найти подходящих примеров.

Спасибо

Ответы [ 3 ]

3 голосов
/ 25 августа 2010

Это должно помочь вам начать:

<class name="Person">
  <id column"PersonId" type="...">
    <generator class="..."/>
  </id>
  <property name="name" column="PersonName" access="field"/>
  <property name="age" column="PersonAge" access="field"/>
  <idbag name="Children" table="ParentRelations">
    <collection-id column="RelationId" type="...">
      <generator class="..."/>
    </collection-id>
    <key column="Parent"/>
    <many-to-many column="Child" class="Person"/>
  </idbag>
</class>
1 голос
/ 25 августа 2010

Я не понимаю. Каковы отношения между родителем и ребенком? 1: Н или М: Н? Если 1: N, то изучите отношение NHibernate многие-к-одному , если M: N, то изучите многие-ко-многим .

0 голосов
/ 25 августа 2010

Ваш пример немного расплывчатый, но вы должны изучить использование класса ассоциации.

...