Like 不会转义特殊字符 NHibernate
Like doesn't escape special characters NHibernate
我在使用 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
这会 return 预期的结果
.Where(x => x.attr.Contains(query)) // query == "lel[%]lel"
我在使用 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
这会 return 预期的结果
.Where(x => x.attr.Contains(query)) // query == "lel[%]lel"