Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何获取具有相应RegionInfo.GeoId的所有国家/地区_.net_Cultureinfo - Fatal编程技术网

.net 如何获取具有相应RegionInfo.GeoId的所有国家/地区

.net 如何获取具有相应RegionInfo.GeoId的所有国家/地区,.net,cultureinfo,.net,Cultureinfo,正如我所看到的,并非所有国家都列有CultureInfo.GetCultures(CultureTypes.AllCultures&~CultureTypes.NeutralCultures) 如果我看下面的对话框,我可以看到失踪的国家在那里。如何从.Net获取此完整列表(以及相应的RegionInfo.GeoId) 看起来您无法做到这一点(至少不使用.NET中的CultureInfo)。 说: 请记住,区域性名称和标识符仅代表可在特定计算机上找到的区域性子集。Windows版本或service

正如我所看到的,并非所有国家都列有
CultureInfo.GetCultures(CultureTypes.AllCultures&~CultureTypes.NeutralCultures)

如果我看下面的对话框,我可以看到失踪的国家在那里。如何从.Net获取此完整列表(以及相应的
RegionInfo.GeoId


看起来您无法做到这一点(至少不使用.NET中的
CultureInfo
)。 说:

请记住,区域性名称和标识符仅代表可在特定计算机上找到的区域性子集。Windows版本或service Pack可以更改可用的区域性。应用程序使用CultureAndRegionInfoBuilder类添加自定义区域性。用户使用Microsoft Locale Builder工具添加自己的自定义区域性。Microsoft Locale Builder是使用CultureAndRegionInfoBuilder类在托管代码中编写的


我也受到了这一点的影响,我得出了一个结论,即我的应用程序的业务行为依赖于Microsoft关于向.NET添加或删除区域性的决定,这是一种糟糕的做法。

那么有没有办法通过p/invoke来实现这一点呢?我不知道,我还没有尝试过。我刚刚在我的应用程序中加入了ISO-3166表格。