Привет всем.
Не смог найти никакой информации о том, в чем отличие этих двух культур.
Единственное, создал два объекта CultureInfo и посмотрел под дебагом на их свойства.
CultureInfo c = new CultureInfo("ru");
CultureInfo c1 = new CultureInfo("ru-RU");
Для объекта
c свойства DateTimeFormat и NumberFormat кидают ошибку
Культура "ru" — это нейтральная культура. Она не может использоваться при форматировании и разборе и поэтому не может быть назначена текущей культурой для этого потока
Также, нашел у Майкрософта на сайте такое описание:
ru:
http://www.microsoft.com/resources/msdn/goglobal/default.mspx?submitted=0019&OS=Windows 7
ru-RU:
http://www.microsoft.com/resources/msdn/goglobal/default.mspx?submitted=0419&OS=Windows 7
Что такое нейтральная культура? Я примерно представляю себе смысл существования InvariantCulture, но зачем нужна нейтральная русская? Какую культуру надо использовать для локализации на русский при создании ресурсов? Сейчас весь проект работает на ресурсах культуры ru вполне успешно и без ошибок, но в конфиге при этом задается культура ru-RU. Правильное ли это поведение идеологически?
Здравствуйте, Ахм, Вы писали:
Ахм>Не смог найти никакой информации о том, в чем отличие этих двух культур.
Всё это подробно описано в стандарте
КАС-1766
Ахм>Что такое нейтральная культура? Я примерно представляю себе смысл существования InvariantCulture, но зачем нужна нейтральная русская?
Чтобы хранить в ней, например, ресурсы, общие для всех диалектов русского, а для отдельных диалектов использовать культуру более низкого уровня.
Конкретно для русского таких вариантов в Windows только один, но, если нужно, можно использовать расширения согласно стандарту.
Вот для испанского языка, например, таких диалектов куча.
Ахм>Какую культуру надо использовать для локализации на русский при создании ресурсов?
Ахм>Сейчас весь проект работает на ресурсах культуры ru вполне успешно и без ошибок, но в конфиге при этом задается культура ru-RU. Правильное ли это поведение идеологически?
Правильное, именно так и надо делать.