为什么没有文化枚举?

The*_*der 8 c# cultureinfo

问候,

我想知道为什么C#中的文化没有预先设定的枚举?由于文化永远不会改变,并且总是像"nl-NL,en-GB,en-US"..为什么不为它做一个简单的事情让事情变得有点容易?

[编辑]

如上所述,文化会发生变化......但不是全部.为什么不制作一个包含所有文化并允许添加/更改它们的枚举/类类型?

Mic*_*tum 15

"既然文化永远不会改变"

不是吗?本文(Microsoft .NET Framework 4:全球化中的新内容)不同意.仅在过去的5年中,塞尔维亚地区发生了很多变化,导致了新的文化.

在现实世界中,由于新标准经常更新文化敏感信息,或者因为微软发现有关不同市场的更准确信息或扩展到更多市场,全球化信息因本地市场的文化发展而不断变化.

与之前版本中的至少203种文化相比,Microsoft .NET Framework 4支持至少354种文化.这些培养物中的许多是中性的,其被添加以完成母链到根中性培养物.

例如,在现有的文化Inuktitut(加拿大的Syllabics)和Inuktitut(拉丁语,加拿大)中添加了三种Inuktitut中性物质.

另外,我猜一个枚举本身没有意义.CultureInfo不仅仅是一个名称,而且查找提供了更多的灵活性和独立于任何政治变化,其中有许多比我们通常意识到的更多.


Ric*_*ard 7

枚举在编译时固定.

但是这些文化在运行时会有所不同:

  • 不同的OS版本支持不同的文化
  • 操作系统更新(Service Pack,语言界面包,...)可以添加文化
  • 后来的.NET版本支持更多文化(为一个版本构建程序集并将其与另一个版本一起使用).