ASCII olmayan karakterler içeren URI yolları Unix'te doğru ayrıştırılır
Sınıfında, ASCII olmayan karakterler içeren mutlak URI yollarının artık Unix platformlarında doğru ayrıştırılması gibi bir hata düzeltildi System.Uri .
Açıklama değiştirildi
.NET'in önceki sürümlerinde, ASCII olmayan karakterler içeren mutlak URI yolları Unix platformlarında yanlış ayrıştırılır ve yolun kesimleri yinelenir. (Mutlak yollar "/" ile başlayan yollardır.) .NET 5 için ayrıştırma sorunu düzeltildi. .NET'in önceki bir sürümünden .NET 5 veya sonraki bir sürümüne geçerseniz, , Uri.ToString()ve diğer Uri üyeler tarafından Uri.AbsoluteUriüretilen farklı değerler alırsınız.
Unix üzerinde çalıştırıldığında aşağıdaki kodun çıkışını göz önünde bulundurun.
var myUri = new Uri("/üri");
Console.WriteLine($"AbsoluteUri: {myUri.AbsoluteUri}");
Console.WriteLine($"ToString: {myUri.ToString()}");
Önceki .NET sürümünde çıktı:
AbsoluteUri: /%C3%BCri/%C3%BCri
ToString: /üri/üri
.NET 5 veya sonraki bir sürümde çıktı:
AbsoluteUri: /%C3%BCri
ToString: /üri
Sürüm kullanıma sunulmuştur
5.0
Önerilen eylem
Yinelenen yol kesimlerini bekleyen ve hesaplayan kodunuz varsa bu kodu kaldırabilirsiniz.