1

NHibernate 3.0の組み込みLinqプロバイダーに依存して、MaxやMinなどの集計関数を含み、Contains、StartsWith、EndsWithなどの文字列操作を含む複雑なクエリを実行できますか?

4

3 に答える 3

2

私が見つけた顕著な問題は次のとおりです。

  1. 継承階層で問題になる可能性のある.OfType()メソッドは実装されていません。
  2. 左結合はサポートされていません
  3. 自明でないグループごとの操作は機能しません(グループ数による並べ替えのような単純なものでも)。
  4. Fetch()は、関連するコレクションでのページングを困難にする可能性があるクエリの最後のメソッドである必要があります。

ただし、これは間違いなくNHContribプロバイダーからの改善です。

リストした操作は、通常のシナリオで問題なくサポートされます。

于 2010-12-28T22:54:25.917 に答える
1

まだ未解決の問題がかなりあるため、nhusersリストでは多くの議論がありました。

私はnhusersグループを見て、いくつかの投稿を読んで、あなた自身の心を決めます。投稿についてはこちらをご覧ください

個人的には、queryover必要なことはすべて実行できるので、Linqプロバイダーが時間の経過とともに安定するまで待つことにしました。

気分を良くするために、nhusersグループに参加することをお勧めします。

于 2010-12-23T09:23:37.417 に答える
1

LINQプロバイダーは、Ayendeによって作成されたプロバイダーよりもはるかに安定していて高度です。(彼が書いたものを否定しなかったのは、私が再びNHを拾ったと彼が書いたためでした)

NHQueryで遭遇した唯一の問題は複合型だと思います。EF / L2Sでそれらを行うことができ、NH3は正しいSQLを生成しているように見えますが、それを実行できません。

個人的にはQueryOverが好きで、読みやすくなっています。

于 2010-12-23T09:36:09.853 に答える