Compartilhar via


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

Os métodos FromXmlString e ToXmlString que estão em tipos ECC (criptografia de curva elíptica) estão obsoletos a partir do .NET 7. Seu uso em códigos gera o aviso SYSLIB0042 em tempo de compilação. Eles nunca foram implementados e sempre geraram uma exceção PlatformNotSupportedException. A obsolescência afeta os seguintes métodos:

Solução alternativa

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

Em vez de ToXmlString, use ExportSubjectPublicKeyInfo ou ExportPkcs8PrivateKey, conforme sua preferência pela chave pública ou privada.

Em vez de FromXmlString, use ImportSubjectPublicKeyInfo ou ImportPkcs8PrivateKey, conforme sua preferência pela importação de chave pública ou privada.

Suprimir um aviso

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

Para suprimir apenas uma violação única, adicione as diretivas de pré-processador ao arquivo de origem para desabilitar e, em seguida, reabilite 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 avisos SYSLIB0042 no projeto, adicione uma propriedade <NoWarn> ao arquivo de projeto.

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

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