Compartir a través de


SYSLIB0018: no se admite la carga con solo reflexión y se genera PlatformNotSupportedException.

Los métodos siguientes están marcados como obsoletos a partir de .NET 6. Si se los llama en el código, se genera la advertencia SYSLIB0018 en tiempo de compilación. Estos métodos también generan una excepción PlatformNotSupportedException en tiempo de ejecución.

Soluciones

La carga de solo reflexión se reemplaza por el contexto de carga de metadatos en .NET Core y .NET 5 y versiones posteriores. Para más información, consulte Cómo: Inspeccionar el contenido del ensamblado mediante MetadataLoadContext.

Supresión de una advertencia

Si tiene que seguir usando las API obsoletas, puede suprimir la advertencia en el código o en el archivo de proyecto.

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

// Disable the warning.
#pragma warning disable SYSLIB0018

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

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

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

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

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