1

例を見てみましょう: ペットのコレクションを持つ人物。少なくとも 5 匹のペットを飼っている人物のみをリストしたいと考えています。

私が試してみました:

 var result = (from a in UnitOfWork.CurrentSession.QueryOver<Person>()
                          where a.Pets.Count >4
                          select a
                ).List()

しかし、それはプロパティ Count を認識しないと言います (DB フィールドではないので、これは理にかなっています)。私も Count() を試しましたが、その機能を理解していないと言ってまだ機能しません(例外をスローします)。

あらゆる種類のサブクエリと基準メソッドを試しましたが、すべてをまとめるには十分ではありません。そして、LINQ、HQL、QueryOver、Criteria のどちらを使用するべきかわかりません... SQL の方がはるかに簡単ですが、「チート」したくありません。

私は狂ったようにグーグルを検索してきましたが、見つけたものはすべてコンパイルされないか、実行時エラーが発生します

4

1 に答える 1

1

QueryOverLINQ(Query<T>()拡張メソッド)の代わりに使用しています

于 2012-08-11T01:01:31.687 に答える