小编典典

一般用StringComparison.OrdinalIgnoreCase还是StringComparison.InvariantCultureIgnoreCase哪个最好?

all

我有一些这样的代码:

If key.Equals("search", StringComparison.OrdinalIgnoreCase) Then
    DoSomething()
End If

我不关心这个案子。我应该使用OrdinalIgnoreCase,InvariantCultureIgnoreCase还是CurrentCultureIgnoreCase?


阅读 69

收藏
2022-07-14

共1个答案

小编典典

较新的 .Net Docs 现在有一个表格,可帮助您确定最适合您的情况。

来自 MSDN 的“在 Microsoft .NET 2.0 中使用字符串的新建议

摘要:以前使用InvariantCulturefor 字符串比较、大小写和排序的代码所有者应该强烈考虑String在 Microsoft
.NET 2.0 中使用一组新的重载。 具体来说,设计为与文化无关和语言无关的数据
应开始使用新枚举的StringComparison.OrdinalStringComparison.OrdinalIgnoreCase成员指定重载。StringComparison这些强制执行类似于这样的逐字节比较strcmp,不仅避免了基本符号字符串的语言解释中的错误,而且提供了更好的性能。

2022-07-14