Устаревшая стратегия FileStream удалена
AppContext
Переключение System.IO.UseNet5CompatFileStream
и возможность использования устаревшей FileStream реализации были удалены.
Прежнее поведение
FileStream
Устаревшая реализация была доступна, и вы можете выбрать ее с помощью коммутатора UseNet5CompatFileStream
или переменной DOTNET_SYSTEM_IO_USENET5COMPATFILESTREAM
среды.
Новое поведение
Начиная с .NET 7, вы больше не можете использовать устаревшую реализацию FileStream
.
Представленные версии
.NET 7( предварительная версия 1)
Тип критического изменения
Это изменение может повлиять на совместимость двоичного кода.
Причина изменения
Переменная UseNet5CompatFileStream
коммутатора и DOTNET_SYSTEM_IO_USENET5COMPATFILESTREAM
среды были включены в .NET 6, если новая реализация вызвала критические изменения. Исправлены критические изменения. Так как в изменениях больше ошибок FileStream
нет, режим совместимости был удален и с ним все устаревший код, что упрощает обслуживание базы кода.
Рекомендуемое действие
Если вы используете переключатель (или DOTNET_SYSTEM_IO_USENET5COMPATFILESTREAM
переменную среды), чтобы отказаться от устаревшего кода и обновить до .NET 7, коммутатор больше не будет иметь никакого эффекта, и его следует удалить.
Затронутые API
- System.IO.FileStream
- System.IO.File.Create(String)
- System.IO.File.Create(String, Int32)
- System.IO.File.Create(String, Int32, FileOptions)
- System.IO.File.Create(String, Int32, FileOptions, FileSecurity)
- System.IO.File.Open(String, FileMode)
- System.IO.File.Open(String, FileStreamOptions)
- System.IO.File.Open(String, FileMode, FileAccess)
- System.IO.File.Open(String, FileMode, FileAccess, FileShare)
- System.IO.File.OpenRead(String)
- System.IO.File.OpenWrite(String)
- System.IO.FileSystemAclExtensions.Create(FileInfo, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity)
- System.IO.FileInfo.Create()
- System.IO.FileInfo.Open
- System.IO.FileInfo.OpenRead()
- System.IO.FileInfo.OpenWrite()