Nhibernate映射 - 子进程可以保存对其父集合的引用吗?

时间:2010-10-21 21:00:44

标签: nhibernate nhibernate-mapping

我是NHibernate的新手,我正在尝试移植一个小型的webforms应用程序来使用它。我试图找出是否可以映射(hmb.xml映射)以下分配:

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之间建立引用的任何方法。

谢谢, 马克H

2 个答案:

答案 0 :(得分:1)

父:

<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"/>

答案 1 :(得分:0)

您可以在代码中执行此操作:

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