【发布时间】:2019-11-22 17:29:47
【问题描述】:
.NET Core 和 .NET Framework 之间的 CultureInfo 似乎有些不同。 这有什么原因吗?
例子:
var italian = CultureInfo.GetCultureInfo("it").TextInfo.CultureName;
在 .NET Core 上解析为:
it
虽然之前在 .NET Framework 上解析为:
it-IT
这会破坏一些单元测试。 在两个干净的控制台项目中运行它会产生不同的结果。 尝试从 Nuget 添加 System.Globalization,结果没有差异。
是否需要一些配置才能使其保持不变,或者它们是否破坏了 CultureInfo altogheter?
【问题讨论】:
-
[CultureInfo 的文档] (docs.microsoft.com/en-us/dotnet/api/…) 提到可用的文化可能因操作系统而异。也许这就是正在发生的事情?
-
我总是会尝试与亚文化合作。令人惊讶的是,在具有多种亚文化的大文化中存在如此多的差异。为了使您的代码全球化,您应该进入亚文化级别的代码以避免将来出现问题
标签: c# .net-core locale globalization cultureinfo