SYSLIB0052: API, поддерживающие устаревшие механизмы расширения Regex, устарели
Regex Следующие и RegexRunner API устарели, начиная с .NET 8. При вызове их в коде выдается предупреждение SYSLIB0052
во время компиляции. Эти API поддерживают устаревшие CompileToAssembly.
- 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)
Обходное решение
Н/П
Отключение предупреждений
Если необходимо использовать устаревшие API, вы можете отключить предупреждение в коде или в файле проекта.
Чтобы отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить предупреждение.
// Disable the warning.
#pragma warning disable SYSLIB0052
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0052
Чтобы отключить все SYSLIB0052
предупреждения в проекте, добавьте <NoWarn>
свойство в файл проекта.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0052</NoWarn>
</PropertyGroup>
</Project>
Дополнительные сведения см. в разделе Отключение предупреждений.