MSDNで彼らは書いています
OptionalFieldAttribute 属性をフィールドに適用することで、フィールドをオプションとしてマークできます。逆シリアル化中にオプションのデータが欠落している場合、シリアル化エンジンは欠落を無視し、例外をスローしません。
例外を取得できません。クラスを作成し、SerializableAttribute でマークし、BinaryFormatter でオブジェクトをシリアル化し、状態をディスク上のファイルに永続化してから、OptionalFieldAttribute でマークしなかった 2 つのフィールドをクラスに追加し、逆シリアル化を試みました。ディスクに永続化したばかりのオブジェクトを返します。例外がスローされなかったことに驚いていますか?