嗨我使用linq nhibernate制作过滤器一切正常但是当我尝试使用引号过滤文本时选择不返回...
qr.Where(o => o.Desc.ToLower().Equals("some text")); // working
qr.Where(o => o.Desc.ToLower().Equals("some \"text\""));
// not working because nhibernate bind parameter as 'some \"text\"' but not 'some "text"'
它的一些nhibernate错误?或者存在一些选项巫力nhibernate取代“with”? 谢谢大家
答案 0 :(得分:2)
它适用于我(只是尝试了您的确切代码)
您使用的是什么版本的NH?
var foos = session.Query<Foo>()
.Where(o => o.Desc.ToLower().Equals("some \"text\""))
.ToList();
输出:
NHibernate:
select
foo0_.id as id0_,
foo0_.[Desc] as Desc2_0_
from
Foo foo0_
where
lower(foo0_.[Desc])=@p0;
@p0 = 'some "text"' [Type: String (4000)]