Partilhar via


SYSLIB0042: FromXmlString e ToXmlString em tipos ECC estão obsoletos

Os FromXmlString métodos e ToXmlString que estão nos tipos de criptografia de curva elíptica (ECC) são obsoletos, começando no .NET 7. Usá-los no código gera aviso SYSLIB0042 em tempo de compilação. Eles nunca foram implementados e sempre lançaram uma PlatformNotSupportedException exceção. A obsolescência afeta os seguintes métodos:

Solução

Use um formato de dados padrão para trocar chaves de curva elíptica (EC).

Em vez de ToXmlString, use ExportSubjectPublicKeyInfo ou ExportPkcs8PrivateKey dependendo se você deseja a chave pública ou privada.

Em vez de FromXmlString, use ImportSubjectPublicKeyInfo ou ImportPkcs8PrivateKey dependendo se você deseja importar uma chave pública ou privada.

Suprimir um aviso

Se você precisar usar as APIs obsoletas, poderá suprimir o aviso no código ou no arquivo de projeto.

Para suprimir apenas uma única violação, adicione diretivas de pré-processador ao arquivo de origem para desativar e reativar o aviso.

// Disable the warning.
#pragma warning disable SYSLIB0042

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

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

Para suprimir todos os SYSLIB0042 avisos em seu projeto, adicione uma <NoWarn> propriedade ao seu arquivo de projeto.

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

Para obter mais informações, consulte Suprimir avisos.