SYSLIB0052: as APIs que dão suporte a mecanismos obsoletos para extensibilidade regex são obsoletas
As APIs Regex e RegexRunner a seguir estão obsoletas, começando no .NET 8. Chamá-los no código gera aviso SYSLIB0052
em tempo de compilação. Essas APIs suportavam o CompileToAssembly, agora obsoleto.
- Regex.InitializeReferences()
- Regex.UseOptionC()
- Regex.UseOptionR()
- RegexRunner.CharInSet(Char, String, String)
- RegexRunner.Scan(Regex, String, Int32, Int32, Int32, Int32, Boolean)
- RegexRunner.Scan(Regex, String, Int32, Int32, Int32, Int32, Boolean, TimeSpan)
Solução alternativa
N/D
Suprimir um aviso
Se for necessário usar as APIs obsoletas, você poderá suprimir o aviso no código ou no arquivo de projeto.
Para suprimir apenas uma violação única, adicione as diretivas de pré-processador ao arquivo de origem para desabilitar e, em seguida, reabilite o aviso.
// Disable the warning.
#pragma warning disable SYSLIB0052
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0052
Para suprimir todos os avisos SYSLIB0052
no projeto, adicione uma propriedade <NoWarn>
ao arquivo de projeto.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0052</NoWarn>
</PropertyGroup>
</Project>
Para obter mais informações, confira Suprimir avisos.