我看到很多这样使用 Linq to NH 的例子:
ISession session = getSession();
var query = from conference in session.Linq<Conference>()
但在我的代码中,ISession 上没有 .Linq。
以下Using还不够吗?
using NHibernate.Linq;
我看到很多这样使用 Linq to NH 的例子:
ISession session = getSession();
var query = from conference in session.Linq<Conference>()
但在我的代码中,ISession 上没有 .Linq。
以下Using还不够吗?
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,并具有更多功能。