就像没有特殊字符NHibernate一样

时间:2015-05-12 10:09:13

标签: c# sql linq nhibernate

我有NHibernate LINQ contains方法的问题,因为我想在字符串中转义特殊字符,例如我输入:

lel%lel

我想找到确切的

lel%lel but not lel4325234534lel

要查找值,我使用以下方法:

tabArray = _session.Query<Tab>()
                    .Where(x => x.attr.Contains(query))
                    .ToArray();

我也尝试使用likeexpression,但它也没有帮助。

1 个答案:

答案 0 :(得分:4)

我想说,这应该取决于我们(我们的代码)而不是NHibernate。我们可以用这个:

How do I escape a percentage sign in T-SQL?

即。使用 %

替换C#中的所有[%]
lel[%]lel 

这将返回预期的

.Where(x => x.attr.Contains(query)) // query == "lel[%]lel"