.NET中的本地化区域/国家名称

.NET中的本地化区域/国家名称,.net,globalization,.net,Globalization,是否可以在.NET中检索国家的本地化名称 只有英文名、显示名和NativeName,但似乎不可能得到“奥地利”的当地丹麦名,即“奥斯特里格”。无论线程使用哪种文化或UICulture运行,它们都将始终返回英文名称 是否有一种技术我可以使用,或者我必须为此创建一个数据存储?根据MSDN文档,应该获得国家的本地化名称(在您的情况下,是丹麦名称)。考虑到它仍在为您返回英文版本,我怀疑您只需要在(重新)安装.NET Framework时配置区域设置。让我知道这是否奏效。伙计们,你们完全误解了MSDN的声

是否可以在.NET中检索国家的本地化名称

只有英文名、显示名和NativeName,但似乎不可能得到“奥地利”的当地丹麦名,即“奥斯特里格”。无论线程使用哪种文化或UICulture运行,它们都将始终返回英文名称


是否有一种技术我可以使用,或者我必须为此创建一个数据存储?

根据MSDN文档,应该获得国家的本地化名称(在您的情况下,是丹麦名称)。考虑到它仍在为您返回英文版本,我怀疑您只需要在(重新)安装.NET Framework时配置区域设置。让我知道这是否奏效。

伙计们,你们完全误解了MSDN的声明:

DisplayName属性以.NET Framework本地化版本的语言显示国家/地区名称


因此,您需要实现自己的国家/地区名称本地化。

只有当框架具有所需语言的资源时,本地化名称才可用。因此,您需要在DisplayName返回所需名称之前安装语言包(当然,在应用程序中设置了正确的区域性)


下载(也可以选择许多其他语言)。

听起来像是您想要的实际NativeName:所有不同的*Name属性都返回英文名称-始终-它似乎与当前线程区域性无关。@JacobE:在这种情况下,我怀疑是因为您安装了英文版的.NET framework。如果您安装的是丹麦语版本,DisplayName应该返回您想要的内容。@Noldorin:。。。而且你还适当地设置了当前的语言环境。@Richard:是的,没错。我相信这是同一个安装包,他只需要在安装程序中选择丹麦语言环境。无需自行实现,只需确保框架具有所需语言的资源。好吧,对于大约120个字符串,35.6 MB-73.4 MB*对我来说似乎有点奇怪:)