Поделиться через


Удалена реализация BinaryFormatter и всегда вызывается

Реализация "в поле" BinaryFormatter теперь создает исключения во время выполнения во всех случаях. Это последний этап плана obsoletion BinaryFormatter.

Прежнее поведение

Можно создать BinaryFormatter экземпляр и использовать его для сериализации и десериализации полезных данных.

Новое поведение

Начиная с .NET 9 реализация в поле BinaryFormatter создает исключения для использования, даже с параметрами, которые ранее включили его использование. Эти параметры также удаляются.

Представленные версии

.NET 9( предварительная версия 6)

Тип критического изменения

Это изменение поведения.

Причина изменения

BinaryFormatter является небезопасным форматом и причиной многих ошибок безопасности. Удаление из платформы повышает общую безопасность .NET.

Если используется BinaryFormatterкод, следует выбрать новый формат сериализации и перенести код.

Если вы оцениваете риск допустимого BinaryFormatter для вариантов использования, и вы привержены использованию класса, который не может быть безопасным, вы по-прежнему сможете использовать BinaryFormatter отдельный неподдерживаемый пакет NuGet.

Дополнительные сведения, включая рекомендации по альтернативным сериализаторам, см. в руководстве по миграции BinaryFormatter.

Затронутые API

См. также