我正在将 C# 代码移植到 Windows 应用商店应用程序。令我惊讶的是,以下代码不再有效:
someString.Equals("someOtherString", StringComparison.InvariantCultureIgnoreCase)
InvariantCulture
和 InvariantCultureIgnoreCase
已从 StringComparison
中删除(*)。
为什么?
我该如何替换它?
编辑:(*) 严格来说,它没有被删除,它只是不可用 Windows 应用商店应用程序。结果是一样的:你不能使用它。
最佳答案
那些特定的选项并没有消失,只是 Windows 应用商店应用程序不支持它们。
如果您查看 StringComparison Enumeration 的 MSDN您会看到可移植库或适用于 Windows 应用商店的 .NET 不支持这些特定选项。
可移植图书馆或 Windows 应用商店应用程序支持的唯一选项是:
- 当前文化
- CurrentCultureIgnoreCase
- 序数
- OrdinalIgnoreCase
我无法说明原因,但没有“替换”选项,因为框架中不存在这些值。您必须使用现有的其他选项之一,StringComparison.OrdinalIgnoreCase
可能是最容易使用的。
关于c# - StringComparison.InvariantCultureIgnoreCase 去哪儿了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14600694/