L’implémentation BinaryFormatter intégrée a été supprimée et lève toujours
L’implémentation BinaryFormatter « intégrée » lève désormais des exceptions au moment de l’exécution dans tous les cas. Il s’agit de la dernière phase du plan d’obsolescence de BinaryFormatter.
Comportement précédent
Vous pouvez construire une instance BinaryFormatter et l’utiliser pour sérialiser et désérialiser des charges utiles.
Nouveau comportement
À compter de .NET 9, l’implémentation BinaryFormatter intégrée lève des exceptions lors de son utilisation, même avec les paramètres qui activaient précédemment son utilisation. Ces paramètres sont également supprimés.
Version introduite
.NET 9 Preview 6
Type de changement cassant
Ce changement est un changement de comportement.
Raison du changement
BinaryFormatter
est un format non sécurisé et la cause de nombreux bogues de sécurité. Sa suppression du framework augmente la sécurité globale de .NET.
Action recommandée
Si votre code utilise BinaryFormatter
, vous devez sélectionner un nouveau format de sérialisation et migrer votre code.
Si vous jugez le risque posé par BinaryFormatter
acceptable pour vos cas d’usage et que vous vous engagez à utiliser une classe qui ne peut pas être sécurisée, vous serez toujours en mesure d’utiliser BinaryFormatter
via un package NuGet distinct et non pris en charge.
Pour plus d’informations, notamment pour obtenir des conseils sur les alternatives en matière de sérialiseurs, consultez le guide de migration de BinaryFormatter.
API affectées
Voir aussi
- Annonce : BinaryFormatter est supprimé dans .NET 9
- BinaryFormatter désactivé dans la plupart des types de projet (.NET 8)
- Les API de sérialisation BinaryFormatter produisent des erreurs du compilateur (.NET 7)
- SerializationFormat.Binary est obsolète (.NET 7)
- Les méthodes de sérialisation de BinaryFormatter sont obsolètes (.NET 5)