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 への呼び出しを 1 回だけ使用して、親の名前を持つ子のリストを取得するにはどうすればよいですか。私は試した:

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

しかし、うまくいきませんでした。

マッピングは FluentNHibernate を使用して行われます。

4

1 に答える 1

1

とても近い:

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

動作するはずです(.ToListへの追加の呼び出し、またはParentへの結合は必要ありません)

于 2012-09-19T14:50:18.743 に答える