我有一个Lambda表达式,可以在提交表单后搜索该列。 当我提交它时,它确实起作用,但是它不能以我想要的正确方式进行搜索。 我想使它像在类似SQL的语句中搜索一样工作。
select * FROM tableSearch where subject like '%f5%'
这样,即使'F'是大写字母,它仍然可以找到它。 使用Lambda表达式可以做到这一点。 使用以下代码,除非我在主题中输入“ F5”,否则它仅在“ F”不是大写字母时才会找到它。
if (!string.IsNullOrEmpty(searchControl.subject))
{
searchList = searchList.Where(x => x.subject.Contains(searchControl.subject)).ToList();
}
答案 0 :(得分:1)
为什么不让他们两个都ToLower
:
searchList.Where(x => x.subject.ToLower().Contains(searchControl.subject.ToLower()))
或:
searchList.Where(x => x.subject.IndexOf(searchControl.subject, StringComparison.OrdinalIgnoreCase) >= 0)
答案 1 :(得分:0)
您需要使用StringComparison,如下所示:
searchList = searchList.Where(x => x.subject.Contains(searchControl.subject,StringComparison.CurrentCultureIgnoreCase)).ToList();
通过使用它,您可以忽略大小写。