Silverlighti DateTime arvutuste värskendamine uute Jaapani ajastuste töötlemiseks

Teave selle värskenduse kohta

1. mail 2019 algab Jaapani kalendri uus ajastu. See on esimene üleminek ühest ajastust teise alates jaanuarist 1989. See värskendus Microsoft Silverlighti fikseerib DateTime arvutused, et hallata ja vormindada uusi ajastuid Jaapani kalendris.

Jaapani ajastu toetatud funktsioonid

Ulatus – lõõgastus

Kui Heisei (平成) ajastu lõpeb 30. aprillil, 2019 (Heisei (平成) 31) ja uus ajastu algab 1. mail, 2019, "平成 31 年 5 月 1 日" kaotab kehtivuse. Oleme lõdvestunud meie parss, et võimaldada tulevased ja varasemad kuupäevad (nii Gregoriuse kui ka Jaapani kuupäevad) teisendatakse asjakohaseks Jaapani ajastuks kuupäevaks, kuid mitte erandit välja viskamata.

Näiteks eelmise Jaapani näitab ajastu puhul on 64 maksimaalne ajastu aasta. Praegune Silverlighti kood ei saa kuupäeva sõeluda, kui kuupäeva aasta on praeguse ajastu puhul 64 suurem. Kui see proovib, siis see viskab erandi.  See värskendus lahendab selle probleemi ja sõelub kuupäeva isegi siis, kui aasta on suurem kui maksimaalne ajastu.

Järgmine näide illustreerib muudatust. DateTime.Parse("昭和 70/1/1 0:00:00", new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } })

Selles näites ei saa erandit teha. Selle asemel sõelub kuupäev edukalt ja tagastab 1/1/1995 12:00:00 am (70 – 64 = 6. (Heisei ajastu algas 1989; 1989 + 6 = 1995.)

Samuti saate teisendada tulevased kuupäevad Heisei uue Jaapani ajastule pärast seda, kui uus Jaapani ajastu nimi on välja kuulutatud.  

Gannen (元年) Jaapani ajastu esimesel aastal

Ajalooliste tavadega tähistatakse ajastu esimest aastat erimärkega "Gan (元)" (mille kanji märk on "päritolu" või "algus") selle asemel, et number "Ichi" (1) ". Esimene aasta "Gannen (元年)" jätkub kuni Gregoriuse kalendri lõppkuupäevani, 31.

See värskendus lubab Silverlightil Gannen (元年) märke edukalt sõeluda. 

Märkus. Silverlight jätkab tagasi 01 ja mitte, kui Silverlighti palutakse vormindada ajastu esimest kuupäeva. Selle saab määrata, kui arendajad asendavad aasta "01" aastaga "元".  Lihtne stringi asendus oleks selle saavutamiseks sobiv.

Järgmistes näidetes kirjeldatakse, kuidas Silverlighti töötleb vormingut ja sõelub Gannen (元年).

Vormingu

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

Käitumine enne värskendamist: formattedDate on "平成 01 年 01 月 08 日" Käitumine pärast värskendamist: formattedDate on "平成 01 年 01 月 08 日"

Enne värskendamist pole muutunud käitumist.

Sõelumine

Ichinen (1 年)

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

Käitumine enne värskendamist annab tulemiks True ja sisaldab PARSEDDATE {1/8/1989 12:00:00 am}. Käitumine pärast värskendamist annab tulemiks True ja sisaldab PARSEDDATE {1/8/1989 12:00:00 am}.

Enne värskendamist pole muutunud käitumist.

Gannen (元年)

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

Käitumine enne värskendamist annab tulemiks väärtuse FALSE ja sisaldab PARSEDDATE {1/1/0001 12:00:00 am}. Käitumine pärast värskendamist annab tulemiks True ja sisaldab PARSEDDATE {1/8/1989 12:00:00 am}.

Kas vajate veel abi?

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liitu Microsofti Insideri programmis osalejad

Kas sellest teabest oli abi?

Täname tagasiside eest!

Täname tagasiside eest! Tundub, et võiksime teid kokku viia ühega meie Office'i tugiagentidest, kes aitab teil probleemi lahendada.

×