我必须在 Fluent NHibernate 中编写一个查询
从用户名 = 'Abcd' AND 密码 = '123456' 的用户中选择 *
如何使用session.CreateCriteria
创建上述查询
最佳答案
Fluent NHibernate 是默认 HBM 文件(Hibernate Mapping)的替代映射框架
NHibernate 本身提供了不同的查询 API,例如
- HQL - Hibernate 查询语言
- 标准
- 查询 -(LINQ 等效项)
- QueryOver -(强类型条件)
- SQL
对于 Criteria,您的查询将类似于:
var users = session.CreateCriteria<Users>()
.Add(Restrictions.Eq("UserName", "Abcd"))
.Add(Restrictions.Eq("Password", "123456"))
.List<Users>();
查询:
var users = from u in session.Query<Users>()
where u.UserName == "Abcd"
&& u.Password == "123456"
select u;
或
var users = session.Query<Users>()
.Where(x => x.UserName == "Abcd" && u.Password == "123456");
查询:
var users = session.QueryOver<Users>()
.Where(x => x.UserName == "Abcd")
.And(u.Password == "123456")
.List();
关于nhibernate - 流畅的 NHibernateWhere 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6659398/