[英]CultureInfo differs between .NET Core and .NET Framework
.NET Core和.NET Framework之间的 CultureInfo 似乎存在一些差异。 这有什么理由吗?
例子:
var italian = CultureInfo.GetCultureInfo("it").TextInfo.CultureName;
在.NET 上,核心解析为:
it
虽然它之前在.NET 框架上解决了:
it-IT
这打破了一些单元测试。 在两个干净的控制台项目中运行它会产生不同的结果。 尝试从 Nuget 添加 System.Globalization,结果没有差异。
是否需要一些配置才能使其相同,或者它们是否破坏了 CultureInfo altogheter?
我确认了这种行为,但 Core 更具决定性。
你要求文化“它”,你得到文化“它”。
.NET 框架正在添加更多详细信息并为其指定默认亚文化-IT。
如果你要求
var italian = CultureInfo.GetCultureInfo("it-IT").TextInfo.CultureName;
直接地。
您将在两个世界中得到相同的结果。
更改该字符串对于您的测试来说应该是一个小问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.