Отображение Nhibernate - Может ли ребенок содержать ссылку на свою родительскую коллекцию? - PullRequest
1 голос
/ 22 октября 2010

Я новичок в NHibernate и пробую его, портировав небольшое приложение веб-форм для его использования.Я пытаюсь выяснить, возможно ли отобразить (hmb.xml maps) следующие назначения:

public class Foo
{
    public List<Bar> Children { get; set; }

    public void AddBar(Bar b)
    {
        Children.Add(b);
        b.OwnerCollection = Children;
    }
}

public class Bar
{
    public Foo Parent { get; set; }
    public IList OwnerCollection { get; set; }
}

Причиной ссылки на OwnerCollection является некоторая общая манипуляция порядком (реальный класс имеет несколько различных списковобъектов.

Мне удалось все отобразить, но я не вижу способа установить связь между OwnerCollection и Children.

Спасибо, Марк Х

Ответы [ 2 ]

1 голос
/ 22 октября 2010

Родитель:

<set name="Children" inverse="true" cascade="all-delete-orphan">
 <key column="parent_id"/>
 <one-to-many class="Child"/>
</set>

ребенок:

<many-to-one name="Parent" column="parent_id" not-null="true"/>
0 голосов
/ 22 октября 2010

Вы можете сделать это в коде:

public IList<Bar> OwnerCollection
{
    get { return Parent.Children; }
}
...