Compartir a través de


SYSLIB1039: JsonSourceGenerator encontró una anotación con habilitación activada.

Las anotaciones se admiten para la generación de origen, pero no para contextos anotados con . Es decir, el atributo funciona con el generador de metadatos, pero no en métodos de ejecución rápida.

Soluciones alternativas

Quite el atributo o quite la anotación del contexto de serialización.

Suprimir advertencias

Se recomienda usar una de las soluciones alternativas siempre que sea posible. Sin embargo, si no puede cambiar el código, puede suprimir la advertencia a través de una directiva o una configuración de proyecto. Si el diagnóstico del generador de origen no aparece como un error, puede suprimir la advertencia en el código o en el archivo del proyecto.

Para suprimir las advertencias en el código (reemplace el identificador de diagnóstico según sea necesario):

// Disable the warning.
#pragma warning disable SYSLIB1006

// Code that generates compiler diagnostic.
// ...

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

Para suprimir las advertencias de un archivo de proyecto (reemplace los identificadores de diagnóstico según sea necesario):

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   <TargetFramework>net10.0</TargetFramework>
   <!-- NoWarn below suppresses SYSLIB1002 project-wide -->
   <NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
   <!-- To suppress multiple warnings, you can use multiple NoWarn elements -->
   <NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
   <NoWarn>$(NoWarn);SYSLIB1006</NoWarn>
   <!-- Alternatively, you can suppress multiple warnings by using a semicolon-delimited list -->
   <NoWarn>$(NoWarn);SYSLIB1002;SYSLIB1006;SYSLIB1007</NoWarn>
  </PropertyGroup>
</Project>