我正在使用NHibernate和Lambda Extensions,我无法弄清楚如何对特定类型的查询进行短语。
我的应用程序允许用户在图片中标记其他用户。所以有Picture对象,每个Picture都有一个或多个Tag对象,每个Tag对象都有一个User对象。
我正在实施搜索功能。给定一个搜索字符串,我想返回其Name包含字符串或的所有图片,其中包含任何标签,其中User包含字符串。
我不知道如何组装此查询,或者我是否需要使用子查询或别名来执行此查询。这样做的正确方法是什么?
答案 0 :(得分:0)
在Lambda中我不知道但您可以使用别名来搜索集合吗?
session.CreateCriteria<Picture>()
.CreateAlias("Tags", "tags")
.Add(
Expression.Or(
Expression.Eq("Name","term"),
Expression.Eq("tags.User.Name","term")));