Applies ToSilverlight

Par šo atjauninājumu

2019. gada 1. maijā tiek sākta jaunā ēra japāņu kalendārā. Šī ir pirmā pāreja no viena laikmeta uz citu kopš 1989. gada janvāra. Šis Microsoft Silverlight atjauninājums izlabo DateTime aprēķinus, lai apstrādātu un formatētu jaunus laikmetus japāņu kalendārā.

Japāņu laikmets atbalstītie līdzekļi

Diapazona atpūta

Kad Heisei (平成) ēra beidzas 30. aprīlī, 2019 (Heisei (平成) 31), un jaunais laikmets sākas 1. maijā, 2019, "平成 31 年 5 月 1 日" kļūst nederīgs. Mums ir atvieglinātas mūsu parsētāju, lai atļautu turpmāko un iepriekšējo datumu (gan Gregora, gan Japānas datumus), kas tiek konvertēti atbilstošā japāņu laikmeta datumā, neizmetot izņēmumu.

Piemēram, par iepriekšējo japāņu Showa ēru maksimālais ēru gads ir 64. Pašreizējais Silverlight kods nevar parsēt datumu, ja datuma gads ir lielāks par 64 pašreizējam laikmetam. Ja tā mēģina, tas izsviež izņēmumu.  Šis atjauninājums novērš šo problēmu un parsē datumu pat tad, ja gads ir lielāks par maksimālo ēru gadu.

Tālāk sniegtajā piemērā ir attēlotas izmaiņas: DateTime.Parse("昭和 70/1/1 0:00:00", new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } })

Šajā piemērā netiek izmests izņēmums. Tā vietā tas veiksmīgi izanalizēs datumu un atgriezīs 1/1/1995 12:00:00 AM (70 – 64 = 6. (Heisei ēra sākās programmā 1989; 1989 + 6 = 1995.)

Jūs arī varēsit konvertēt turpmākos datumus programmā Heisei uz jauno japāņu ēru pēc tam, kad tiek paziņots jaunais japāņu ēras nosaukums.  

Gannen (元年) pirmajam Japānas ēras gadam

Vēsturiskajā praksē pirmajam VRN gadam tiek norādīts īpašs simbols "gan (元)" (kura kandži rakstzīme nozīmē "izcelsme" vai "sākums"), nevis skaitlis "ichi (1)". Pirmais gads "Gannen (元年)" turpina līdz Gregora kalendāra gada beigām, 31. decembris.

Šajā atjauninājumā ir atļauts veiksmīgi parsēt Gannen (元年) rakstzīmes. 

Piezīme. Silverlight turpinās atgriezties pie 01 un NOT, ja Silverlight tiek lūgts formatēt pirmo ēras datumu. To var novērst, izstrādātājiem aizstājot "01" gadu ar "元" gadu.  To var paveikt vienkārša virknes aizstāšana.

Tālāk norādītajos piemēros ir sniegta informācija par to, kā Silverlight apstrādā Gannen (元年) formatējumu un parsēšanu.

Formatējumu

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

Darbība pirms atjaunināšanas: formattedDate ir "平成 01 年 01 月 08 日" Darbība pēc atjaunināšanas: formattedDate ir "平成 01 年 01 月 08 日"

Uzvedībā nav nevienas izmaiņas, kas pastāvējušas pirms atjaunināšanas.

Parsēšanas

Ichinen (1 年)

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

Darbība pirms atjaunināšanas: atgriež patiess , un tajā ir parsedDate no {1/8/1989 12:00:00 AM} Darbība pēc atjaunināšanas: atgriež patiess un ir parsedDate no {1/8/1989 12:00:00 AM}

Uzvedībā nav nevienas izmaiņas, kas pastāvējušas pirms atjaunināšanas.

Gannen (元年)

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

Darbība pirms atjaunināšanas: atgriež FALSE un ir parsedDate no {1/1/0001 12:00:00 AM} Darbība pēc atjaunināšanas: atgriež patiess un ir parsedDate no {1/8/1989 12:00:00 AM}

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.