Обновление вычислений даты и времени в Silverlight для обработки новых японских эр

Применяется к
Silverlight

Об этом обновлении

1 мая 2019 года в японском календаре начинается новая эра. Это первый переход из одной эпохи в другую с января 1989 года. В этом обновлении для Microsoft Silverlight исправлены вычисления даты и времени для обработки и форматирования новых эр японского календаря.

Поддерживаемые функции японской эры

Range-Relaxation

Когда эра Хэйсэй (平成) заканчивается 30 апреля 2019 года (Хэйсэй (平成) 31), а новая эра начинается 1 мая 2019 года, «平成 31 年 5 月 1 日» становится недействительным. Мы ослабили наши средства синтаксического анализа, чтобы позволить будущим и прошлым датам (как григорианским, так и японским) преобразовываться в соответствующие даты японской эры без исключения.

Например, для предыдущей японской эры Сёва максимальный год эры составляет 64. Текущий код Silverlight не может проанализировать дату, если год даты больше 64 для текущей эры. Если он попытается, он выдаст исключение.  Это обновление устраняет эту проблему и анализирует дату, даже если год больше максимального значения эры год.

Это изменение показано в следующем примере:

DateTime.Parse(“昭和 70/1/1 0:00:00", new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } })

В этом примере не будет создаваться исключение. Вместо этого он успешно анализирует дату и возвращает 01.01.1995 12:00:00 AM (70 – 64 = 6. (Эра Хэйсэй началась в 1989 году; 1989 + 6 = 1995 год.)

Вы также сможете преобразовать будущие даты в Хэйсэй в новую японскую эру после объявления названия новой японской эры.
 

Ганнэн (元年) для первого года японской эры

В исторической практике первый год эры обозначается специальным символом «Ган (元)» (иероглиф кандзи которого означает «происхождение» или «начало») вместо числа «Ити (1)». Первый год "Ганнэн (元年)" продолжается до даты окончания григорианского календарного года, 31 декабря.

Это обновление позволит Silverlight успешно анализировать символы Ганнэн (元年). 

Примечание Silverlight будет по-прежнему возвращать 01 , а не , если Silverlight будет предложено отформатировать первую дату эры. Это можно исправить, попросив разработчиков заменить год "01" на год "元".  Простая замена строки позволит достичь этого.

В следующих примерах подробно описано, как Silverlight обрабатывает форматирование и анализ Ганнэн (元年).

Форматирование

string pattern = "gg yyyy'\u5E74' MM'\u6708' dd'\u65E5'"; //"gg yyyy'年' MM'月' dd'日'"

DateTime dt = new DateTime(1989, 01, 08); // Start of Heisei Era

string formattedDate = dt.ToString(pattern, jpnFormat);

Поведение перед обновлением: formattedDate is "平成 01年 01月 08日"
Поведение после обновления: formattedDate — "平成 01年 01月 08日"

Поведение не изменилось по сравнению с тем, что было до обновления.

Синтаксический анализ

Итинэн (1 年)

DateTime.TryParseExact("平成 01年 01月 08日", pattern, jpnFormat, DateTimeStyles.None, out parsedDate)

Поведение до обновления: Возвращает значение true и имеет значение {08.01.1989 12:00:00}
Поведение после обновления: возвращает значение true и имеет дату анализа {08.01.1989 12:00:00}

Поведение не изменилось по сравнению с тем, что было до обновления.

Ганнэн (元年)

DateTime.TryParseExact("平成元年 01月 08日", pattern, jpnFormat, DateTimeStyles.None, out parsedDate)

Поведение до обновления: Возвращает значение false и имеет значение {01.01.0001 12:00:00}
Поведение после обновления: возвращает значение true и имеет дату анализа {08.01.1989 12:00:00}

Порядок получения обновления

Способ 1. Сайт Microsoft Silverlight

Установщик Silverlight включает в себя все предыдущие обновления в дополнение к этому. Чтобы установить последнюю версию Silverlight, перейдите на следующий веб-сайт корпорации Майкрософт: Скачать Microsoft Silverlight.

Способ 2. Центр обновления Майкрософт

Это обновление доступно в Центре обновления Майкрософт. Дополнительные сведения о том, как запустить Центр обновления Майкрософт, см. в статье «Как получить обновление через клиентский компонент Центра обновления Windows».

Способ 3. Центр загрузки Майкрософт

Вы можете получить отдельный пакет обновления в Центре загрузки Майкрософт. Следуйте инструкциям по установке на странице загрузки, чтобы установить обновление.

Скачать пакет Silverlight 5

 Дополнительные сведения о загрузке файлов службы поддержки Майкрософт см. в следующей статье базы знаний Майкрософт:

119591 Как получить файлы поддержки Майкрософт от веб-службы Корпорация Майкрософт проверила этот файл на наличие вирусов. Корпорация Майкрософт использовала новейшее программное обеспечение для обнаружения вирусов, доступное на дату публикации файла. Файл хранится на защищенных серверах, что предотвращает его несанкционированное изменение.

Ссылки

Узнайте о терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.