Applies ToSilverlight

Informazioni su questo aggiornamento

Il 1 maggio 2019 inizia la nuova era del calendario giapponese. Si tratta della prima transizione da un'epoca all'altra a partire da gennaio 1989. Questo aggiornamento per Microsoft Silverlight risolve i calcoli DateTime per gestire e formattare nuove ere nel calendario giapponese.

Funzionalità supportate dell'era giapponese

Range-Relaxation

Quando l'era Heisei (平成) termina il 30 aprile 2019 (Heisei (平成) 31) e la nuova era inizia il 1 maggio 2019, “平成 31 年 5 月 1 日” non è piÙ valido. Abbiamo rilassato i parser per permettere che le date future e passate (sia gregoriane che giapponesi) siano convertite in una data rilevante dell'era giapponese senza eccezioni.

Ad esempio, per la precedente era giapponese Showa, l'anno massimo dell'era è 64. Il codice Silverlight attuale non è in grado di analizzare la data se l'anno della data è superiore a 64 per l'era corrente. Se ci prova, genererà un'eccezione.  Questo aggiornamento risolve questo problema e analizza la data anche se l'anno è maggiore di quello massimo.

L'esempio seguente illustra la modifica:DateTime.Parse(“昭和 70/1/1 0:00:00", new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } })

Questo esempio non creerà un'eccezione. Invece, analizzerà correttamente la data e restituirà 1/1/1995 12:00:00 AM (70 - 64 = 6). (L'era Heisei è iniziata nel 1989; 1989+6 = 1995).

Sarà anche possibile convertire le date future di Heisei nella nuova era giapponese dopo l'annuncio del nome della nuova era.  

Gannen (元年) per il primo anno dell'era giapponese

Nella pratica storica, il primo anno dell'era è indicato da un carattere speciale "Gan (元)" (il cui carattere Kanji significa "origine" o "inizio") invece del numero "Ichi (1)". Il primo anno "Gannen (元年)" continua fino al termine dell'anno solare gregoriano, il 31 dicembre.

Questo aggiornamento consente a Silverlight di analizzare correttamente i caratteri Gannen (元年). 

Nota Silverlight continuerà a restituire 01 e non se gli verrà richiesto di formattare la prima data dell'era. Questo può essere risolto facendo sostituire agli sviluppatori l'anno "01" con l'anno "元".  Questa operazione può essere eseguita con una semplice sostituzione di stringa.

I seguenti esempi illustrano in dettaglio come Silverlight gestisce la formattazione e l'analisi di Gannen (元年).

Formattazione

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

Comportamento prima dell'aggiornamento: formattedDate è "平成 01年 01月 08日" Comportamento dopo l'aggiornamento: formattedDate è "平成 01年 01月 08日"

Non vi è alcun cambiamento di comportamento rispetto a quanto accadeva prima dell'aggiornamento.

Analisi

Ichinen (1 年)

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

Comportamento prima dell'aggiornamento: Restituisce vero e ha una parsedDate di {1/8/1989 12:00:00 AM}. Comportamento dopo l'aggiornamento: Restituisce vero e ha un parsedDate di {1/8/1989 12:00:00 AM}

Non vi è alcun cambiamento di comportamento rispetto a quanto accadeva prima dell'aggiornamento.

Gannen (元年)

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

Comportamento prima dell'aggiornamento: Restituisce falso e ha un parsedDate di {1/1/0001 12:00:00 AM} Comportamento dopo l'aggiornamento: Restituisce vero e ha un parsedDate di {1/8/1989 12:00:00 AM}

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.