Compartir a través de


SYSLIB0037: Los miembros de AssemblyName HashAlgorithm, ProcessorArchitecture y VersionCompatibility están obsoletos

Las siguientes propiedades System.Reflection.AssemblyName están marcadas como obsoletas a partir de .NET 7. El uso de estas API en el código genera una advertencia SYSLIB0037 en tiempo de compilación.

Estas propiedades no son una parte adecuada de una instancia AssemblyName. No realizan un recorrido de ida y vuelta a través de la AssemblyNamerepresentación de cadena y el cargador de ensamblados los omite en .NET Core.

Solución alternativa

No use estos miembros en escenarios en los que se esperaba que los valores se realicen de ida y vuelta a través de la representación de cadena de AssemblyName.

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 SYSLIB0037

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

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

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

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

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