Локализованные названия регионов / стран в .NET - PullRequest
4 голосов
/ 09 мая 2009

Можно ли получить локализованное название страны в .NET?

Класс RegionInfo имеет только EnglishName, DisplayName и NativeName - но, по-видимому, невозможно получить, например, местное датское имя для «Austria», которое означает «Østrig». Они всегда будут возвращать английское имя, независимо от того, с какой культурой или культурой UICulture работает нить.

Есть ли метод, который я могу использовать, или мне придется создать хранилище данных для этого?

Ответы [ 3 ]

6 голосов
/ 09 мая 2009

Локализованные имена доступны только в том случае, если инфраструктура имеет ресурсы на требуемом языке. Поэтому вам нужно установить языковой пакет, прежде чем DisplayName вернет нужные имена (разумеется, с правильной культурой, установленной в приложении).

Загрузите языковой пакет danish 3.5 SP1 здесь (можно выбрать и многие другие языки).

3 голосов
/ 09 мая 2009

Ребята, вы совершенно не поняли утверждение MSDN:

Свойство DisplayName отображает название страны / региона на языке локализованной версии .NET Framework.

Так что вам нужно реализовать собственную локализацию для названий стран.

0 голосов
/ 09 мая 2009

Согласно документам MSDN, RegionInfo.DisplayName должно получить локализованное (в вашем случае датское) название страны. Учитывая, что он все еще возвращает английскую версию для вас, я подозреваю, что вам просто нужно настроить локаль, когда вы (пере) устанавливаете .NET Framework. Дайте мне знать, если это поможет.

...