Windows phone 7 如何在windows phone7应用程序中获取国家/地区代码?

Windows phone 7 如何在windows phone7应用程序中获取国家/地区代码?,windows-phone-7,mobile,windows-mobile,Windows Phone 7,Mobile,Windows Mobile,我的应用程序使用电话号码作为用户ID,最好检测SIM卡的家庭PLMN,并将其转换为国家代码(如+1、+33等),然后您就不必输入数字了。 我想这可以通过windows mobile中的RIL实现,但在windows phone 7中似乎没有这样的API。 另一种选择是获取CultureInfo,但有时CultureInfo可能与您使用的SIM卡不匹配,例如您将手机带到国外,通常情况下,您会将电话区域设置保留为您的家,但您可以使用本地SIM卡。似乎没有任何API操作允许您查看嵌入WP7 SIM卡的

我的应用程序使用电话号码作为用户ID,最好检测SIM卡的家庭PLMN,并将其转换为国家代码(如+1、+33等),然后您就不必输入数字了。 我想这可以通过windows mobile中的RIL实现,但在windows phone 7中似乎没有这样的API。
另一种选择是获取CultureInfo,但有时CultureInfo可能与您使用的SIM卡不匹配,例如您将手机带到国外,通常情况下,您会将电话区域设置保留为您的家,但您可以使用本地SIM卡。

似乎没有任何API操作允许您查看嵌入WP7 SIM卡的特定区域性。但是,如果您选择“通用文化”选项仍然合适,您可以这样做:

string countryCode = CultureInfo.CurrentCulture.Name; 
try {
    RegionInfo reg = new RegionInfo(countryCode);
    string name = reg.Name;
    string displayname = reg.DisplayName;
    string ISORegion = reg.TwoLetterISORegionName;
    string currency = reg.CurrencySymbol;
    string eng = reg.EnglishName;
    string native = reg.NativeName;
} 
catch (ArgumentException argEx) {
    // The country code was not valid 
}

如果您的应用程序需要基于当前位置,请考虑使用GPS任务。可以查看获取GPS数据的详细信息

此外,如图所示,还可以通过地理编码反转完成将GPS数据转换为特定国家/地区的操作