C# 将搜索参数与字符串进行比较

C# 将搜索参数与字符串进行比较,c#,C#,我知道我需要修改什么代码来实现这一点,但我不知道如何修改它 假设您输入了DUA的参数搜索 你的桌子看起来像这样 Name ----- Duane Dakdua Olpdua Poduaia 我想让这个代码做的是获取搜索到的字母数,在这个例子中是三个,然后根据第一个数字进行搜索 所以我应该得到的唯一结果是“Duane” 我继承了这段代码,所以我必须深入研究它,这是我发现的一句话,我相信我必须改变 nameQuery = nameQuery.Where(name => name.FirstN

我知道我需要修改什么代码来实现这一点,但我不知道如何修改它

假设您输入了DUA的参数搜索

你的桌子看起来像这样

Name
-----
Duane
Dakdua
Olpdua
Poduaia
我想让这个代码做的是获取搜索到的字母数,在这个例子中是三个,然后根据第一个数字进行搜索

所以我应该得到的唯一结果是“Duane”

我继承了这段代码,所以我必须深入研究它,这是我发现的一句话,我相信我必须改变

nameQuery = nameQuery.Where(name => name.FirstName.ToUpper().Contains(searchParameter));

字符串-,有一个c方法,也可以检查StringComparison参数,这样就可以忽略大小写

您的代码如下所示:

nameQuery = nameQuery.Where(x=> x.FirstName.StartsWith(searchParameter ,StringComparison.InvariantCultureIgnoreCase));

正如其他人所说的,您希望通过以下方式启动:

nameQuery = nameQuery.Where(name => name.FirstName
    .StartsWith(searchParameter ,StringComparison.InvariantCultureIgnoreCase));
我想你可能想按顺序退货

nameQuery = nameQuery.Where(name => name.FirstName
    .StartsWith(searchParameter ,StringComparison.InvariantCultureIgnoreCase)).OrderBy(name => name);

字符串有一个StartsWith方法。您应该使用StartsWith而不是contains来表示此结果hanks!我甚至不知道它的存在。请把它放进去,作为回答,这样我就可以竖起大拇指了。