Condividi tramite


SYSLIB0028: X509Certificate2.PrivateKey è obsoleto

La proprietà X509Certificate2.PrivateKey è contrassegnata come obsoleta, a partire da .NET 6. L'uso di questa API nel codice genera un avviso SYSLIB0028 in fase di compilazione.

Soluzioni alternative

Usare il metodo appropriato per ottenere la chiave privata, ad esempio RSACertificateExtensions.GetRSAPrivateKey(X509Certificate2), o usare il metodo X509Certificate2.CopyWithPrivateKey(ECDiffieHellman) per creare una nuova istanza con una chiave privata.

Eliminare un avviso

Se è necessario usare le API obsolete, è possibile eliminare l'avviso nel codice o nel file di progetto.

Per eliminare solo una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare l'avviso.

// Disable the warning.
#pragma warning disable SYSLIB0028

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

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

Per eliminare tutti gli avvisi SYSLIB0028 nel progetto, aggiungere una proprietà <NoWarn> al file di progetto.

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

Per altre informazioni, vedere Eliminare gli avvisi.