在我的测试中,我的断言包含p.Contains(".Tests")
,但它会出错
错误CA1307 The behavior of 'string.Contains(string)' could vary based on the current user's locale settings. Replace this call in 'Solution.Tests.PackageTests._bowerEnabledProjects' with a call to 'string.Contains(string, System.StringComparison)'.
所以我想通过:p.Contains(".Tests", System.StringComparison)
修复它,但它会出错:
错误CS0119 'StringComparison' is a type, which is not valid in the given context
答案 0 :(得分:1)
StringComparison
是一个枚举 - 警告表示您要指定该枚举中的一个值,例如StringComparison.Ordinal
。
但是,这个警告有两个错误:
string.Contains(string, StringComparison)
方法。 string.Contains
的文档甚至给出了如何实现这种方法的示例。string.Contains
状态的文档:“此方法执行序数(区分大小写和文化不敏感)比较。”我建议禁用警告。
答案 1 :(得分:0)
以下是我对于仍在寻找该问题解决方案的人的答案。
我也遇到了同样的问题,我修改了如下代码。
if (!string.IsNullOrWhiteSpace(searchQuery))
{
searchQuery = searchQuery.Trim();
collection = collection.Where(a => a.MainCategory.Contains(searchQuery, StringComparison.Ordinal)
|| a.FirstName.Contains(searchQuery, StringComparison.Ordinal)
|| a.LastName.Contains(searchQuery, StringComparison.Ordinal));
}