Categoria Unicode modificata per alcuni caratteri Latin-1

I metodi Char restituiscono ora la categoria Unicode corretta per i caratteri nell'intervallo Latin-1. La categoria corrisponde a quella dello standard Unicode.

Descrizione delle modifiche

Nelle versioni precedenti di .NET i metodi Char usavano un elenco fisso di categorie Unicode per i caratteri nell'intervallo Latin-1. Tuttavia, lo standard Unicode ha modificato le categorie di alcuni di questi caratteri dopo l'implementazione di tali API, creando una discrepanza. Inoltre, si è verificata una discrepanza tra le API Char e CharUnicodeInfo, che seguono lo standard Unicode. In .NET 5 e versioni successive i metodi Char usano e restituiscono la categoria Unicode corrispondente allo standard Unicode per tutti i caratteri.

La tabella seguente illustra i caratteri le cui categorie Unicode sono state modificate in .NET 5:

Carattere Categoria Unicode
nelle versioni precedenti di .NET
Categoria Unicode
in .NET 5 e versioni successive
§ (\u00a7) OtherSymbol OtherPunctuation
ª (\u00aa) LowercaseLetter OtherLetter
SHY (\u00ad) DashPunctuation Format
* (\u00b6) OtherSymbol OtherPunctuation
º (\u00ba) LowercaseLetter OtherLetter

Versione introdotta

.NET 5.0

Se si dispone di codice che ottiene la categoria di caratteri Unicode usando la classeChar e presuppone che la categoria non cambierà mai, potrebbe essere necessario aggiornarla.

Motivo della modifica

Questa modifica è stata apportata in modo che le categorie restituite dal tipo Char siano coerenti con lo standard Unicode e il tipo CharUnicodeInfo.

API interessate

Inoltre, qualsiasi classe che dipende da Char per ottenere la categoria di caratteri Unicode, ad esempio Regex, è interessata da questa modifica.