我正在编写用于在数据库中搜索的代码,所以我编写了以下代码:
public IEnumerable<Company> SearchInCustomers(string Search)
{
return Company.Where(w =>
(w.CompanyName.ToLower().Contains(Search.ToLower())) ||
(w.City.ToLower().Contains(Search.ToLower()))).OrderBy(w => w.Id);
}
我工作得很好,我认为这是很好的代码。当我开始使用例如 SonarCube 检查我的代码时(这是为了检查您的代码并发现错误代码),它说我使用了.ToLower()
错误的代码。它向我展示了为什么以及如何使用它的消息(如果您想查看消息,请告诉我),并给了我一个链接。
它说我需要使用.ToLowerInvariant()
,但我从未听说过。
所以现在我想知道,使用它真的很糟糕,我应该像往常一样ToLower()
使用还是只使用它?.ToLowerInvariant()
编辑:
输入始终使用相同的语言,在我居住的国家/地区使用,并且无法删除某些内容。中没有“奇怪”的输入Search
。