Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
URI'lerdeki
Daha önce, Uri iki Uri örneği eşitlik için karşılaştırırken kullanıcı bilgilerini karşılaştırmamıştı. Ancak, URI'ler söz konusu olduğunda mailto: bu davranış sezgisel değildir. Bu değişiklikle Uri.Equals birlikte operatör artık == URI'leri karşılaştırırken kullanıcı bilgilerini dikkate alır.
Önceki davranış
.NET 8'in öncesinde, aşağıdaki karşılaştırmaların her ikisi de döndürdü true.
Uri uri1 = new Uri("https://user1@www.microsoft.com");
Uri uri2 = new Uri("https://user2@www.microsoft.com");
System.Console.WriteLine(uri1 == uri2); // True.
Uri uri3 = new Uri("mailto:user1@microsoft.com");
Uri uri4 = new Uri("mailto:user2@microsoft.com");
System.Console.WriteLine(uri3 == uri4); // True.
Yeni davranış
.NET 8'den başlayarak, ilk karşılaştırma yine döndürür true, ancak ikinci karşılaştırma (URI'ler mailto ) döndürür false.
Uri uri1 = new Uri("https://user1@www.microsoft.com");
Uri uri2 = new Uri("https://user2@www.microsoft.com");
System.Console.WriteLine(uri1 == uri2); // True.
Uri uri3 = new Uri("mailto:user1@microsoft.com");
Uri uri4 = new Uri("mailto:user2@microsoft.com");
System.Console.WriteLine(uri3 == uri4); // False.
Sürüm kullanıma sunulmuştur
.NET 8
Hataya neden olan değişikliğin türü
Bu değişiklik davranışsal bir değişikliktir.
Değişiklik nedeni
Önceki davranış beklenmeyen ve uygunsuzdu.
Önerilen eylem
E-posta adreslerinin yalnızca konak bölümünü karşılaştırmak istiyorsanız, yalnızca üyeleri karşılaştırın Uri.Host .