SYSLIB0043: ECDiffieHellmanPublicKey.ToByteArray elavult

A következő módszerek elavultak, a .NET 7-től kezdve. A kódban való használat figyelmeztetést SYSLIB0043 generál fordításkor.

A ECDiffieHellmanPublicKey.ToByteArray() metódus nem tartalmaz hallgatólagos fájlformátumot. Emellett a beépített implementációk esetében az összes nem Windows operációs rendszerre is hatással PlatformNotSupportedException van. Mivel ECDiffieHellmanPublicKey szabványos formátumexportálással is rendelkezik (a ExportSubjectPublicKeyInfo() módszerrel), a régebbi tag elavult.

Áthidaló megoldás

Ha a nyilvános kulcs értékét exportálja, használja inkább a metódust ExportSubjectPublicKeyInfo() .

Új származtatott típusok (vagy meglévő származtatott típusok esetén, amelyek jelenleg nem hívják meg a ECDiffieHellmanPublicKey(Byte[]) konstruktort), ne hívja meg a védett ECDiffieHellmanPublicKey(Byte[]) konstruktort, és ne írja felül ToByteArray() a kivételt, vagy fogadja el az üres tömb visszaadásának alapértelmezett viselkedését.

A meglévő származtatott típusok esetében, amelyek már meghívják a védett ECDiffieHellmanPublicKey(Byte[]) konstruktort, folytassa a konstruktor meghívását, és tiltsa le a figyelmeztetést SYSLIB0043 .

Figyelmeztetés mellőzése

Ha az elavult API-kat kell használnia, letilthatja a figyelmeztetést a kódban vagy a projektfájlban.

Ha csak egyetlen szabálysértést szeretne letiltani, adjon hozzá előfeldolgozási irányelveket a forrásfájlhoz, hogy letiltsa, majd engedélyezze újra a figyelmeztetést.

// Disable the warning.
#pragma warning disable SYSLIB0043

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

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

Ha el szeretné tiltani a SYSLIB0043 projekt összes figyelmeztetését, adjon hozzá egy tulajdonságot <NoWarn> a projektfájlhoz.

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

További információ: Figyelmeztetések mellőzése.