0
public class Parent
{
    public virtual long Id { get; set; }
    public virtual string Name { get; set; }
    public virtual List<Child> Children { get; set; }
}

public class Child
{
    public virtual long Id { get; set; }
    public virtual string Description { get; set; }
    public virtual Parent Parent { get; set; }
}

在 NHibernate 中,如何仅使用一次调用 db 来获取具有父名的子级列表。我试过:

CurrentSession.QueryOver <子>().JoinQueryOver(x=>x.Parent).Fetch(x => x.Parent).Eager.List<子>().ToList();

但它没有用。

映射是使用 FluentNHibernate 完成的。

4

1 回答 1

1

很近:

CurrentSession.QueryOver<Child>()
  .Fetch(x => x.Parent).Eager
  .List<Child>();

应该可以工作(您不需要额外调用 .ToList 或加入 Parent)

于 2012-09-19T14:50:18.743 回答