.NET RegionInfo 类
当我尝试使用某些 ISO 3166 国家/地区代码(孟加拉国的“BD”、索马里的“SO”、斯里兰卡的“LK”)创建新的 RegionInfo 时,我收到一个 ArgumentException,表示它无法识别。
这是怎么回事? RegionInfo(string) 的 Intellisense 表示它符合 ISO 3166,但不支持这些国家/地区代码?
我不明白。
When I try to create a new RegionInfo with certain ISO 3166 country codes ("BD" for Bangladesh, "SO" for Somalia, "LK" for Sri Lanka), I get an ArgumentException that says it's not recognized.
What's the deal? The Intellisense of RegionInfo(string) says it conforms to ISO 3166, but these country/region codes are not supported?
I don't get it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
.NET 并不提供所有开箱即用的文化/区域。 请注意此处的“预定义”RegionInfo:http: //msdn.microsoft.com/en-us/library/system.globalization.regioninfo(VS.80).aspx。
不幸的是,如果您想使用非预定义区域,则必须自己定义它们。 以下是 MSDN 操作方法: http://msdn.microsoft .com/en-us/library/ms172469(VS.80).aspx。
.NET doesn't provide all Cultures/Regions out-of-the-box. Note the 'predefined' RegionInfos here: http://msdn.microsoft.com/en-us/library/system.globalization.regioninfo(VS.80).aspx.
Unfortunately, if you want to use non-predefined Regions, you have to define them yourself. Here's the MSDN how-to: http://msdn.microsoft.com/en-us/library/ms172469(VS.80).aspx.
部分现在支持您错过的所有区域(在较新版本的 .NET Framework 和操作系统中)。以下代码查找从特定区域性“可访问”的所有
RegionInfo
:在我的机器上,它现在给出:
编辑:更新为我的 Windows 10(版本 1803“2018 年 4 月更新”)计算机上看到的内容,.NET Framework 4.7.2。
SomeAll of the regions you missed are now supported (in newer versions of the .NET Framework and of the operating system).The following code finds all
RegionInfo
that are "reachable" from a specific culture:On my machine right now it gives:
Edit: Updated to what is seen om my Windows 10 (version 1803 "April 2018 Update") machine, .NET Framework 4.7.2.