NHibernate:在查询中将Guid转换为字符串

cbp*_*cbp 4 nhibernate

将NHibernate与Linq或Criterion一起使用,是否可以在GUID列上执行LIKE查询?

在T-SQL中,这很简单:*select*from mytable,其中id为'0ae%'*

但是NHibernate不会将Guid转换为字符串.

cbp*_*cbp 7

我找到了答案 - 我需要使用预测.这是我想出的:

var query = Session.CreateCriteria(typeof (MyClass))
    .Add(Restrictions.Like(
        Projections.Cast(NHibernateUtil.String, Projections.Property("Id")),
        '%'+keywords+"%"));
Run Code Online (Sandbox Code Playgroud)