Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein Fehler in der System.Uri Klasse wurde behoben, sodass absolute URI-Pfade, die nicht-ASCII-Zeichen enthalten, jetzt richtig auf Unix-Plattformen analysiert werden.
Änderungsbeschreibung
In früheren Versionen von .NET werden absolute URI-Pfade, die Nicht-ASCII-Zeichen enthalten, auf Unix-Plattformen falsch analysiert, und Segmente des Pfads werden dupliziert. (Absolute Pfade sind diejenigen, die mit "/" beginnen.) Das Analyseproblem wurde für .NET 5 behoben. Wenn Sie von einer früheren Version von .NET zu .NET 5 oder höher wechseln, erhalten Sie unterschiedliche Werte, die von Uri.AbsoluteUri, Uri.ToString()und anderen Uri Mitgliedern erstellt werden.
Berücksichtigen Sie die Ausgabe des folgenden Codes, wenn sie auf Unix ausgeführt wird.
var myUri = new Uri("/üri");
Console.WriteLine($"AbsoluteUri: {myUri.AbsoluteUri}");
Console.WriteLine($"ToString: {myUri.ToString()}");
Ausgabe bei der vorherigen .NET-Version:
AbsoluteUri: /%C3%BCri/%C3%BCri
ToString: /üri/üri
Ausgabe bei .NET 5 oder einer höheren Version:
AbsoluteUri: /%C3%BCri
ToString: /üri
Eingeführte Version
5.0
Empfohlene Aktion
Wenn Sie Code haben, der die doppelten Pfadsegmente erwartet und konten, können Sie diesen Code entfernen.