【发布时间】:2009-07-09 10:34:59
【问题描述】:
我想做一个查询,需要将属性的属性与某个值进行比较。例如:
... WHERE Identity.Location.Room = "room #1"
如何使用标准 api 实现这一点?
最好的问候
奥利弗·哈纳皮
【问题讨论】:
标签: nhibernate criteria
我想做一个查询,需要将属性的属性与某个值进行比较。例如:
... WHERE Identity.Location.Room = "room #1"
如何使用标准 api 实现这一点?
最好的问候
奥利弗·哈纳皮
【问题讨论】:
标签: nhibernate criteria
这将通过加入您的表来执行查询:
var criteria = session.CreateCriteria(typeof(Identity))
.CreateAlias("Location", "l")
.Add(Restrictions.Eq("l.Room", "room #1"));
【讨论】:
尽量不要在别名中使用数字。
var criteria = session.CreateCriteria(typeof(Identity))
.CreateAlias("Location", "Al")
.Add(Restrictions.Eq("Al.Room", "room #1"));
【讨论】: