Hibernate CreateCriteria包含限制

Hibernate CreateCriteria包含限制,hibernate,nhibernate,criteria,hibernate-criteria,criteria-api,Hibernate,Nhibernate,Criteria,Hibernate Criteria,Criteria Api,我正在使用CriteriaAPI进行查询,并希望查询包含全文索引的列 但是在CriteriaAPI中,我无法成功地找到包含的内容 是否有办法在标准中使用包含?我使用了CreateQuery,能够让它工作,但想知道是否有一种方法可以使用CreateCriteria完成它 非常感谢任何指向相同的指针,因为我已经搜索了很长一段时间了。我们可以使用criteria.expression.SQL生成自定义SQL部件。(有一个) 我们的情况可能就是这样 var searchedValue = "search

我正在使用CriteriaAPI进行查询,并希望查询包含全文索引的列

但是在CriteriaAPI中,我无法成功地找到
包含的内容

是否有办法在标准中使用
包含
?我使用了
CreateQuery
,能够让它工作,但想知道是否有一种方法可以使用
CreateCriteria
完成它


非常感谢任何指向相同的指针,因为我已经搜索了很长一段时间了。

我们可以使用
criteria.expression.SQL
生成自定义SQL部件。(有一个)

我们的情况可能就是这样

var searchedValue = "searched value";

var session = ... // get session 

// dynamic way to construct some SQL part
var criterion = NHibernate.Criterion.Expression
    .Sql(" CONTAINS ({alias}.LastName, ? ) ",
        new object[] { searchedValue},
        new IType[] { NHibernate.NHibernateUtil.String});

// our criteria
var criteria = session.CreateCriteria<MyEntity>();

// with our FULLTEXT filter
criteria.Add(criterion);

// result..
var list = criteria
    .SetFirstResult(0) // paging
    .SetMaxResults(10)
    .List<MyEntity>();
var searchedValue=“searched value”;
var会话=…//获取会话
//动态构造SQL部件的方法
var Criteria=NHibernate.Criteria.Expression
.Sql(“包含({alias}.LastName,?”),
新对象[]{searchedValue},
新的IType[]{NHibernate.NHibernateUtil.String});
//我们的标准
var-criteria=session.CreateCriteria();
//使用我们的全文过滤器
标准。添加(标准);
//结果。。
var列表=标准
.SetFirstResult(0)//分页
.SetMaxResults(10)
.List();

还有一个问题。我尝试在一对一映射上应用过滤器。我试图实现的是在拖动对象时添加where子句。我添加了一个
属性ref
,它只是基于该引用进行拉取,但我希望添加另一个条件。可能吗?我不想使用包,因为
property ref
+我的条件会给我一个唯一的对象。这是不同的主题。我建议。。接受这个问题的答案。。并提出新的。你肯定(提供了足够的细节)得到了答案{alias}将是我用来查询的基础模型上的别名Hibernate集,对吗?