Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È stato risolto un bug nella System.Uri classe in modo che i percorsi URI assoluti che contengono caratteri non ASCII ora analizzano correttamente nelle piattaforme Unix.
Descrizione delle modifiche
Nelle versioni precedenti di .NET, i percorsi URI assoluti che contengono caratteri non ASCII vengono analizzati in modo non corretto nelle piattaforme Unix e i segmenti del percorso vengono duplicati. I percorsi assoluti sono quelli che iniziano con "/".) Il problema di analisi è stato risolto per .NET 5. Se si passa da una versione precedente di .NET a .NET 5 o versione successiva, si otterranno valori diversi prodotti da Uri.AbsoluteUri, Uri.ToString()e altri Uri membri.
Si consideri l'output del codice seguente quando viene eseguito in Unix.
var myUri = new Uri("/üri");
Console.WriteLine($"AbsoluteUri: {myUri.AbsoluteUri}");
Console.WriteLine($"ToString: {myUri.ToString()}");
Output della versione precedente di .NET:
AbsoluteUri: /%C3%BCri/%C3%BCri
ToString: /üri/üri
Output in .NET 5 o versione successiva:
AbsoluteUri: /%C3%BCri
ToString: /üri
Versione introdotta
5.0
Azione consigliata
Se hai codice che prevede e gestisce i segmenti di percorso duplicati, puoi rimuovere tale codice.