Delen via


SYSLIB0043: ECDiffieHellmanPublicKey.ToByteArray is verouderd

De volgende methoden zijn verouderd, te beginnen in .NET 7. Als u ze in code gebruikt, wordt er een waarschuwing SYSLIB0043 gegenereerd tijdens het compileren.

De ECDiffieHellmanPublicKey.ToByteArray() methode heeft geen impliciete bestandsindeling. Voor de ingebouwde implementaties wordt het ook uitgevoerd PlatformNotSupportedException op alle niet-Windows-besturingssystemen. Omdat ECDiffieHellmanPublicKey er ook een standaardindelingsexport is (via de ExportSubjectPublicKeyInfo() methode), is het oudere lid verouderd.

Tijdelijke oplossing

Als u de waarde van de openbare sleutel exporteert, gebruikt u in plaats daarvan de ExportSubjectPublicKeyInfo() methode.

Voor nieuwe afgeleide typen (of bestaande afgeleide typen die momenteel de ECDiffieHellmanPublicKey(Byte[]) constructor niet aanroepen), roept u de beveiligde ECDiffieHellmanPublicKey(Byte[]) constructor niet aan en overschrijft ToByteArray() u deze om een uitzondering te genereren of accepteert u het standaardgedrag van het retourneren van een lege matrix.

Voor bestaande afgeleide typen die al de beveiligde ECDiffieHellmanPublicKey(Byte[]) constructor aanroepen, blijft u de constructor aanroepen en onderdrukt u de SYSLIB0043 waarschuwing.

Een waarschuwing onderdrukken

Als u de verouderde API's moet gebruiken, kunt u de waarschuwing in code of in het projectbestand onderdrukken.

Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de waarschuwing uit te schakelen en vervolgens opnieuw in te schakelen.

// Disable the warning.
#pragma warning disable SYSLIB0043

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

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

Als u alle SYSLIB0043 waarschuwingen in uw project wilt onderdrukken, voegt u een <NoWarn> eigenschap toe aan het projectbestand.

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

Zie Waarschuwingen onderdrukken voor meer informatie.