BinaryFormatter のインボックス実装が削除され、常に例外がスローされる

BinaryFormatter の "インボックス" 実装では、あらゆるケースで実行時に例外がスローされるようになりました。 これは、BinaryFormatter 廃止計画の最終段階です。

以前の動作

BinaryFormatter インスタンスを作成し、それを使用してペイロードのシリアル化と逆シリアル化を行うことができました。

新しい動作

.NET 9 以降、BinaryFormatter のインボックス実装では使用時に例外がスローされます。このことは、以前にその使用を有効にした設定の場合も同様です。 それらの設定も削除されます。

導入されたバージョン

.NET 9 Preview 6

破壊的変更の種類

この変更は、動作変更です。

変更理由

BinaryFormatter は安全でない形式であり、多くのセキュリティバグの原因となります。 これをフレームワークから削除すると、.NET の全体的な安全性が向上します。

コードで BinaryFormatter を使用する場合は、新しいシリアル化形式を選択し、コードを移行する必要があります。

BinaryFormatter のリスクをユースケースで許容できると判断し、セキュリティで保護できないクラスを使用することにした場合は、サポートされていない別の NuGet パッケージを通じて引き続き BinaryFormatter を使用できます。

代替のシリアライザーに関するガイダンスを含む詳細については、「BinaryFormatter 移行ガイド」を参照してください。

影響を受ける API

関連項目