Compartir a través de


SYSLIB0031: EncodeOID está obsoleto

El CryptoConfig.EncodeOID(String) método está marcado como obsoleto, a partir de .NET 6. El uso de esta API en el código genera una advertencia SYSLIB0031 en tiempo de compilación y produce una PlatformNotSupportedException excepción en tiempo de ejecución.

Soluciones alternativas

Use la funcionalidad ASN.1 proporcionada en System.Formats.Asn1.

Supresión de una advertencia

Si debe usar las API obsoletas, puede suprimir la advertencia en el código o en el archivo del proyecto.

Para suprimir solo una infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la advertencia.

// Disable the warning.
#pragma warning disable SYSLIB0031

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

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

Para suprimir todas las SYSLIB0031 advertencias del proyecto, agregue una <NoWarn> propiedad al archivo del proyecto.

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

Para obtener más información, vea Suprimir advertencias.