You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何仅指定国家的CultureInfo会被判定为中性区域性?

.NET中性区域性判定的疑问

我可能对中性区域性的概念理解存在偏差,但微软官方文档的定义很明确:

中性区域性是仅关联语言但不关联国家或地区的区域性,与同时关联语言和国家/地区的特定区域性不同。例如,fr是法语中性区域性的名称,而fr-FR是法国的法语特定区域性。

按照这个定义,下面代码里的实例显然是中性区域性,实际运行结果也符合预期:

var englishCulture = new CultureInfo("en");
Console.WriteLine(englishCulture.IsNeutralCulture); // 输出 True

但仅传入国家代码创建的实例,按道理不该是中性区域性,可实际判定结果却是True:

var greatBritainCulture = new CultureInfo("GB");
Console.WriteLine(greatBritainCulture.IsNeutralCulture); // 输出 True

US等其他国家代码也存在同样的情况。当然,像en-GB这种同时指定语言和国家的区域性实例,结果符合预期,返回False:

Console.WriteLine(new CultureInfo("en-GB").IsNeutralCulture); // 输出 False

为什么仅指定国家代码的实例会被判定为中性区域性?


内容的提问来源于stack exchange,提问作者Tim Schmelter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 18:22:07