SYSLIB0028 : X509Certificate2.PrivateKey est obsolète

La propriété X509Certificate2.PrivateKey est marquée comme obsolète à partir de .NET 6. L’utilisation de cette API dans le code génère un avertissement SYSLIB0028 au moment de la compilation.

Solutions de contournement

Utilisez la méthode appropriée pour obtenir la clé privée, comme RSACertificateExtensions.GetRSAPrivateKey(X509Certificate2), ou utilisez la méthode X509Certificate2.CopyWithPrivateKey(ECDiffieHellman) pour créer une instance avec une clé privée.

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 SYSLIB0028

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

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

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

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

Pour plus d’informations, consultez Supprimer des avertissements.