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.
CLI konsol çıktısında bahsedilen, konsolun tamamının kodlamasını değiştiren UTF-8 ile ilgili kesinti hatası düzeltildi. Burada .NET SDK, bu değişikliği gerçekleştirmişti. .NET SDK bir komut yürütürken konsol kodlaması artık UTF-8 olarak kalmaz. Kullanıcıların bu davranışa güvenmesi mümkündür, bu nedenle bu büyük bir değişikliktir.
Buna ek olarak, .NET SDK'sı artık kodlamayı tam olarak desteklemeyen eski Windows 10 sürümlerinde UTF-8 olarak değiştirmiyor.
Önceki davranış
- SDK, gibi
dotnet build
bir komut çalıştırdıktan sonra terminalin kodlamasını değiştirdi. - SDK, UTF-8'i resmi olarak desteklemeyen Windows 10 sürümlerinde bile İngilizce olmayan karakterleri doğru şekilde işlemek için UTF-8 kodlamasını kullandı. Bu sürümlerde davranış tanımlanmamıştır.
Yeni davranış
- SDK, diğer programlar için çıkış sonrasında terminal kodlamasını değiştirmez.
- Varsayılan olarak, SDK artık onu desteklemeyen Windows sürümleri için UTF-8 kullanmaz.
Sürüm kullanıma sunulmuştur
7.0.3xx .NET 8 Önizleme 3
Kesinti yaratan değişiklik türü
Bu değişiklik ikili uyumluluğu etkileyebilir. Bu aynı zamanda davranışsal bir değişikliktir.
Değişiklik nedeni
.NET SDK'sının diğer programlar için konsoldaki kodlamayı etkilediği bir hata vardı. Bu hata düzeltildi, bu da çığır açan bir değişikliğe yol açtı.
Windows 10'un eski sürümleri (yani Kasım 2019 güncelleştirmesi öncesi sürümler) UTF-8'i desteklemediğinden varsayılan davranış UTF-8 kodlaması kullanmak olmamalıdır. Bunun yerine, artık bir seçenek mevcut.
Önerilen eylem
Uygulamanızın Windows'da kod sayfasını değiştirmesi gerekiyorsa, bir işlem başlatabilir ve komutu çağırmak için chcp
kullanabilir. Uygulamanızın kodlamayı değiştirmek için .NET SDK'sına güvenmemesi gerekir.
.NET SDK'sının İngilizce dışındaki diller için kodlamayı UTF-8 olarak değiştirmesini istediğiniz UTF-8'i resmi olarak desteklemeyen eski Windows 10 sürümleri için ortam değişkenini DOTNET_CLI_FORCE_UTF8_ENCODING
true
veya 1 olarak ayarlayabilirsiniz.