次のように、Linq を NH に使用する多くの例を目にします。
ISession session = getSession();
var query = from conference in session.Linq<Conference>()
しかし、私のコードでは ISession に .Linq はありません。
次の使用では十分ではありませんか?
using NHibernate.Linq;
次のように、Linq を NH に使用する多くの例を目にします。
ISession session = getSession();
var query = from conference in session.Linq<Conference>()
しかし、私のコードでは ISession に .Linq はありません。
次の使用では十分ではありませんか?
using NHibernate.Linq;
正しい名前空間をインポートしていますが、ISession
インターフェイスで間違ったメソッドを使用しています。の代わりにISession.Linq<T>()
、 を使用しますISession.Query<T>()
。
ISession session = getSession();
var query = from conference in session.Query<Conference>()
ISession.Linq<T>()
Linq 2 NHibernateの一部であり、別のプロジェクトであり、一時的な解決策でした。Criteria API に基づいていました。現在は廃止されています。
新しい NHibernate Linq プロバイダーは、メインの NHibernate アセンブリの一部になりました (NH 3.0 以降)。HQL に基づいており、より多くの機能を備えています。