SYSLIB0038 : SerializationFormat.Binary est obsolète

SerializationFormat.Binary est marqué comme obsolète, à compter de .NET 7. L’utilisation de cette API dans le code génère un avertissement SYSLIB0038 au moment de la compilation.

Solution de contournement

Si votre code utilise SerializationFormat.Binary, utilisez plutôt SerializationFormat.Xml ou une autre méthode de sérialisation.

Sinon, vous pouvez définir le commutateur Switch.System.Data.AllowUnsafeSerializationFormatBinary AppContext. Ce commutateur vous permet d’autoriser l’utilisation de SerializationFormat.Binary pour que le code fonctionne comme avant. Toutefois, ce commutateur sera supprimé dans .NET 8. Pour plus d’informations sur la configuration du commutateur, consultez AppContext pour le contrôle serveur consommateur de bibliothèque.

Supprimer un avertissement

Si vous devez utiliser les API obsolètes, vous pouvez supprimer l’avertissement dans le code ou dans votre fichier projet.

Pour supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver, puis réactiver l’avertissement.

// Disable the warning.
#pragma warning disable SYSLIB0038

// Code that uses obsolete API.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB0038

Pour supprimer tous les avertissements SYSLIB0038 dans votre projet, ajoutez une propriété <NoWarn> à votre fichier projet.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   ...
   <NoWarn>$(NoWarn);SYSLIB0038</NoWarn>
  </PropertyGroup>
</Project>

Pour plus d’informations, consultez Supprimer des avertissements.

Voir aussi