Which is generally best to use — StringComparison.OrdinalIgnoreCase or StringComparison.InvariantCultureIgnoreCase?(一般情况下,哪个最适合使用-StringCompison.EveralIgnoreCase或StringCompison.InariantCultureIgnoreCase?)
问题描述
我有如下代码:
If key.Equals("search", StringComparison.OrdinalIgnoreCase) Then
DoSomething()
End If
我不在乎这个案子。我应该使用OrdinalIgnoreCase、InvariantCultureIgnoreCase还是CurrentCultureIgnoreCase?
推荐答案
Newer .Net Docs now has a table to help you decide which is best to use in your situation.
来自MSDN的"New Recommendations for Using Strings in Microsoft .NET 2.0"
摘要:以前使用InvariantCulture进行字符串比较、大小写和排序的代码所有者应该强烈考虑在Microsoft.NET 2.0中使用一组新的String重载。具体地说,被设计为与区域性无关且与语言无关的数据应该开始使用新StringComparison枚举的StringComparison.Ordinal或StringComparison.OrdinalIgnoreCase成员指定重载。它们强制执行类似于strcmp的逐字节比较,这不仅避免了本质上是符号字符串的语言解释的错误,而且提供了更好的性能。
这篇关于一般情况下,哪个最适合使用-StringCompison.EveralIgnoreCase或StringCompison.InariantCultureIgnoreCase?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:一般情况下,哪个最适合使用-StringCompison.EveralIgnoreCase或StringCompison.InariantCultureIgnoreCase?
基础教程推荐
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- WPF 模态进度窗口 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
