我正在将一些代码从 Nhibernate 2.x 转换为 3.0。之前,我使用 LINQ 插件来获得 LINQ 支持。我的理解是,在 3.0 中,它被作为一流的功能引入。所以我的问题是,我曾经有过这个:
return new List<T>(session.Linq<T>().Where(where));
新语法看起来怎么样?我浏览了 nhib 3 文档和教程,但没有看到任何有关 linq 的内容,因此我找不到可以进行模式化的示例。
最佳答案
在带有 Linq 的 NHibernate 3 中,您可以执行以下操作:
from u in session.Query<User>()
where u.Username == username
select u
或者
session.Query<User>().Where(u => u.Username == username)
不确定这是否是您要找的。p>
编辑:Query<T>
是一种扩展方法。不要忘记添加 using NHibernate.Linq
才能使用它。
关于linq - Nhibernate 3 和 LINQ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5083075/