3

Nhibernate 3のlinqプロバイダーは、FetchMany、ThenFetchManyなどを使用してコレクションの複数レベルの熱心なフェッチを指定する機能を提供します。QueryOverを使用してこれを行う同等の方法はありますか。

私が構造を持っていると言う

class  A
{
  IList<B> b;
}

class B
{
  IList<C> c;
}

class C
{

}

NHLinqでツリー全体を熱心にロードできます

session.Query<A>
       .FetchMany(x=> a.b)
       .ThenFetchMany(y => y.c)
       .ToList();

QueryOver APIを使用してこれを行う方法はありますか?

4

1 に答える 1

0
B bAlias = null;
C cAlias = null;
var list = session.QueryOver<A>
.JoinAlias(x=>x.b, () => bAlias, JoinType.LeftOuterJoin)
.JoinAlias(x=>bAlias.c, () => cAlias, JoinType.LeftOuterJoin)
.List();
于 2012-05-07T19:54:43.423 に答える