Nastavení časového razítka u souboru jen pro čtení ve Windows
Nastavení časového razítka souboru s atributem jen pro čtení je teď ve Windows úspěšné a už nevyvolá výjimku.
Staré chování
Před servisními verzemi .NET 6 bylo nastavení časového razítka v souboru jen pro čtení ve Windows výsledkem UnauthorizedAccessException.
Nové chování
Počínaje verzí .NET 6.0.2 je nastavení časového razítka v souboru jen pro čtení ve Windows úspěšné.
Zavedená verze
.NET 6.0.2 (servisní verze)
Typ zásadní změny
Tato změna může ovlivnit binární kompatibilitu.
Důvod změny
Zákazníci dali zpětnou vazbu, že očekávali, že časové razítko u souboru jen pro čtení bylo úspěšné. Díky této změně je chování Windows konzistentní s Linuxem. Nakonec došlo k neúmyslnému chování způsobenému chybou.
Doporučená akce
Je nepravděpodobné, že existující kód očekává, že nastavení časového razítka v souboru jen pro čtení selže. Pokud ale váš kód očekává, že selže, přidejte před pokusem o nastavení časového razítka kontrolu atributu File.GetAttributes(String) jen pro čtení.
Ovlivněná rozhraní API
- System.IO.File.SetCreationTime(String, DateTime)
- System.IO.File.SetCreationTimeUtc(String, DateTime)
- System.IO.File.SetLastAccessTime(String, DateTime)
- System.IO.File.SetLastAccessTimeUtc(String, DateTime)
- System.IO.File.SetLastWriteTime(String, DateTime)
- System.IO.File.SetLastWriteTimeUtc(String, DateTime)