Как получить код страны (например, +61) в asp.net?

Я хочу получить все коды стран (например, +61 для Австралии), указав название страны. Есть ли встроенный метод для получения кода страны в С#, например

int countryCode = CultureInfo.getCountryCode("CountryName");

Я видел некоторые методы в Интернете, но ни один из них не прост. Мне нужен простой метод для получения кода страны, указав название страны. Я видел Google libphonenumber, но есть ли какое-либо простое решение, потому что у меня возникают проблемы при включении этой библиотеки, потому что я использую Visual Studio 2015, но эта библиотека встроена в Visual Studio 2017. Если эта библиотека является только решением тогда как я могу включить эту библиотеку в свой проект Visual Studio 2015?

Это код для получения всех стран

public static List<string> countryList()
    {
        List<string> cultureList = new List<string>();
        CultureInfo[] info = getCultureInfo();

        foreach (CultureInfo culture in info)
        {
            RegionInfo region = new RegionInfo(culture.LCID);

            if (!(cultureList.Contains(region.EnglishName)))
            {
                cultureList.Add(region.EnglishName);
            }
        }

        cultureList.Sort();
        return cultureList;
    }

Теперь, как я могу получить коды стран всех тезисов?


person Hafiz Hamza    schedule 03.02.2018    source источник
comment
Вам нужно нечеткое соответствие названия страны? Или ваши входные данные состоят из полных имен пользователей, идеально совпадающих с именами, которые он использует в .net?   -  person CodesInChaos    schedule 03.02.2018
comment
Мне нужен метод, который принимает название страны и дает соответствующий код страны. Я получаю названия стран из .net, встроенного в Class CultureInfo.   -  person Hafiz Hamza    schedule 03.02.2018
comment
Почему вы делаете это в первую очередь? Звучит как кандидат на проблему xy для меня.   -  person CodesInChaos    schedule 03.02.2018
comment
тогда какое лучшее решение @CodeInChaos   -  person Hafiz Hamza    schedule 03.02.2018
comment
Откуда вы берете названия стран? Вероятно, это не свободное текстовое поле, верно?   -  person CodesInChaos    schedule 03.02.2018
comment
@CodesInChaos см. обновленный вопрос   -  person Hafiz Hamza    schedule 03.02.2018
comment
Быстрый поиск в Google API телефона с кодом страны возвращает CountryCodes.json Gist с множеством списков этих коды. Нужно ли вам, чтобы они всегда были актуальными, — это еще одна деталь, которую вы не предоставили, и я бы предложил использовать решение API вместо копирования и вставки, если вы это сделаете.   -  person NightOwl888    schedule 03.02.2018
comment
Возможный дубликат списка кодов стран с телефонными номерами   -  person NightOwl888    schedule 03.02.2018


Ответы (1)


Чтобы ответить на ваш вопрос, если вы говорите о телефонном префиксе как о коде страны, то, насколько мне известно, встроенного способа нет. Ни культура, ни регион не содержат этой информации.

Самый простой способ — воспользоваться каким-нибудь бесплатным API, например geognos, где вы можете получить данные json о страна, используя код, который вы можете получить из культуры/региона. Например, данные по Австралии можно найти с помощью кода AU.

Изменить.

Чтобы немного пояснить мой ответ, код страны не имеет ничего общего с тел. префикс и код страны в разных форматах можно получить из информации о культуре/регионе.

person Niko    schedule 03.02.2018