SYSLIB1034: JsonSourceGenerator encontrou uma anotação [JsonStringEnumConverter]
O JsonStringEnumConverter não genérico requer código dinâmico e não pode ser usado com geração de código-fonte.
Soluções Alternativas
Em vez disso, use JsonStringEnumConverter<TEnum>, o que não requer geração de código em tempo de execução.
Suprimir avisos
Recomenda-se usar uma das soluções alternativas quando possível. No entanto, se não for possível alterar o código, suprima o aviso por meio de uma diretiva #pragma
ou de uma configuração de projeto <NoWarn>
. Se o diagnóstico do gerador de origem SYSLIB1XXX
não aparecer como um erro, será possível suprimir o aviso no código ou no arquivo de projeto.
Para suprimir os avisos no código, faça o seguinte:
// Disable the warning.
#pragma warning disable SYSLIB1006
// Code that generates compiler diagnostic.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB1006
Para suprimir os avisos em um arquivo de projeto, faça o seguinte:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.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>