Applies ToSilverlight

O této aktualizaci

1. května 2019 začíná nová éra v japonském kalendáři. Jedná se o první přechod z jedné éry do druhé od ledna 1989. Tato aktualizace je pro Microsoft Silverlight DateTime výpočty, které zpracují a formátují nové éry v japonském kalendáři.

Japonská éra podporovala funkce

Range-Relaxation

Když Heisei (平成) éra končí 30. dubna 2019 (Heisei (平成) 31) a nová éra začíná 1. května 2019, „平成 31 年 5 年 1 月“ se stane neplatnou. Uvolnili jsme naše analyzátory, abychom umožnili převedení budoucích a minulých dat (jak gregoriánských, tak japonských dat) do příslušného japonského období, aniž by byla vyvolána výjimka.

Například pro předchozí japonskou Showa éru je maximální éra rok 64. Aktuální kód Silverlight nemůže analyzovat datum, pokud je rok data větší než 64 pro aktuální éru. Pokud se pokusí, vrátí výjimku.  Tato aktualizace opravuje tento problém a analyzuje datum, i když rok přesahuje maximální éru roku.

Následující příklad ilustruje změnu:DateTime.Parse(“昭和 70/1/1 0:00:00", new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } })

Tento příklad nevyhodí žádnou výjimku. Místo toho úspěšně analyzuje datum a navrátí 1/1/1995 12:00:00 AM (70 – 64 = 6). (Heisei éra začala v roce 1989; 1989+6 = 1995.)

Budou také moci převést budoucí data v Heisei do nové japonské éry po vyhlášení názvu nové japonské éry.  

Gannen (元年) pro první rok japonské éry

V historické praxi je první rok éry značený speciálním znakem „Gan (元)“ (znak Kanji znamená „původ“ nebo „začátek“) místo čísla „Ichi (1)“. První rok „Gannen (元年)“ pokračuje až do konce gregoriánského kalendářního roku 31. prosince.

Tato aktualizace umožní službě Silverlight úspěšně analyzovat znaky Gannen (元年). 

Poznámka Silverlight bude pokračovat ve vrácení 01 a ne pokud je Silverlight požádán o formátování prvního data éry. Tento problém lze vyřešit tak, že vývojáři nahradí rok „01“ rokem „元“.  K požadovanému výsledku by stačila jednoduchá výměna řetězce.

Následující příklady ukazují, jak Silverlight zpracovává formátování a analýzu Gannen (元年).

Formátování

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);

Chování před aktualizací: formattedDate je „平成 01年 01月 08日“ Chování po aktualizaci: formattedDate je „平成 01年 01月 08日“

Neexistuje žádná změna v chování oproti situaci před aktualizací.

Analýza

Ichinen (1 年)

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

Chování před aktualizací: Navrátí true a má parsedDate k datu {1/8/1989 12:00:00 AM} Chování po aktualizaci: Navrátí true a má parsedDate k datu {1/8/1989 12:00:00 AM}

Neexistuje žádná změna v chování oproti situaci před aktualizací.

Gannen (元年)

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

Chování před aktualizací: Navrátí false a má parsedDate k datu {1/1/0001 12:00:00 AM} Chování po aktualizaci: Vrátí true a má parsedDate k datu {1/8/1989 12:00:00 AM}

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.