Tôi đang cố gắng sử dụng hàm SQL CONSTAINS
để lọc một số dữ liệu trên API QueryOver.Cách sử dụng Tìm kiếm Toàn văn cho bất kỳ thuộc tính nào có API QueryOver
Vấn đề chính là tôi không thể sử dụng SqlFunction
trong mệnh đề where, nó không biên dịch, vì cần ICriterion
.
var result = Session.QueryOver<Individual>()
.Where(Projections.SqlFunction(
"FullTextContains", NHibernateUtil.Boolean,
Projections.Property<Individual>(x => x.LastName),
Projections.Constant("something")))
.List();
Tôi cố gắng để phù hợp với nó để một hằng số TRUE
, nhưng khi truy vấn được thực hiện nó tạo ra lỗi cú pháp, vì CONSTAINS
chức năng không thể được sử dụng với bằng toán tử.
var result = Session.QueryOver<Individual>()
.Where(Restrictions.Eq(Projections.SqlFunction(
"FullTextContains", NHibernateUtil.Boolean,
Projections.Property<Individual>(p => p.LastName),
Projections.Constant("something")), true))
.List();
Làm thế nào tôi có thể sử dụng một hàm boolean sql trực tiếp tại nơi biểu hiện trên QueryOver API?