我对NHibernate LINQ contains
方法有问题,因为例如,如果我键入以下内容,我想在字符串中转义特殊字符:
lel%lel
我想确切地找到
lel%lel but not lel4325234534lel
要查找值,我使用以下方法:
tabArray = _session.Query<Tab>()
.Where(x => x.attr.Contains(query))
.ToArray();
我也尝试使用
likeexpression
,但这也无济于事。 最佳答案
我要说的是,这应该由我们(我们的代码)而不是NHibernate来决定。我们可以这样使用:
How do I escape a percentage sign in T-SQL?
即用%
替换C#中的任何[%]
lel[%]lel
这将返回预期的结果
.Where(x => x.attr.Contains(query)) // query == "lel[%]lel"