0

参照:異なるテーブルから選択するための nhibernate 基準

この質問に基づいて、たとえば Unit.Amount == 5! で取得した最後の 5 件の注文をフィルター処理したいと思います。(フィルターを追加)次のようなもので可能だと思います:

var query = m_hibernateSession.QueryOver<Model.Order>()
// .Where(x => x.Units[].Amount == 5) ... // which Unit to select in this list?
.OrderBy(x => x.PONumber).Desc.Take(5);

誰かが正しいクエリを見つけるのを手伝ってくれませんか?

どうも

4

1 に答える 1

1

結合を使用すると、問題が解決するはずです

Order orderAlias = null;
Unit unitsAlias = null;
var query = session.QueryOver<Order>(() => orderAlias)
  .JoinAlias(() => orderAlias.Units, () => unitsAlias, JoinType.InnerJoin)
  .Where(() => unitsAlias.Amount == 5)
  .OrderBy(x => x.PONumber).Desc.Take(5);
于 2013-05-08T09:33:16.520 に答える