NHibernate ICriteria で全文検索を使用するのに問題があります
私はフリーテキストを登録しており、以下のように含まれています:
public class CMSSQLDialect : MsSql2008Dialect {
public CMSSQLDialect()
{
RegisterFunction("freetext", new StandardSQLFunction("freetext", null));
RegisterFunction("contains", new StandardSQLFunction("contains", null));
}
}
今、私は次のような ICriteria で関数を使用したいと考えています。
var store = sessionFactory.CreateCriteria(typeof(Comito.CMS.Domain.Entity.Document.Document));
var stringSearchProjection = Projections.SqlFunction("freetext", NHibernateUtil.StringClob, Projections.Property("BodyText"));
射影を検索に追加しようとしています:
store.Add(Restrictions.Eq(stringSearchProjection , '*mysearch*'));
(もちろん)返します
SELECT this_.BodyText as y0_ FROM TableName WHERE freetext(this_.BodyText) = 'dav'
しかし、ICriteriaでフリーテキストを実装するにはどうすればよいですか