SYSLIB0016: метод GetContextInfo() является устаревшим
Метод Graphics.GetContextInfo(), который не принимает аргументы, помечен как устаревший, начиная с .NET 6. При использовании этого метода в коде создается предупреждение SYSLIB0016
во время компиляции.
Дополнительные сведения см. в разделе https://github.com/dotnet/runtime/issues/47880.
Методы обхода проблемы
Для повышения производительности и уменьшения числа выделений используйте перегрузки Graphics.GetContextInfo, принимающие аргументы:
- System.Drawing.Graphics.GetContextInfo(PointF)
- System.Drawing.Graphics.GetContextInfo(PointF, Region)
Отключение предупреждений
Если необходимо использовать устаревшие API, вы можете отключить предупреждение в коде или в файле проекта.
Чтобы отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить предупреждение.
// Disable the warning.
#pragma warning disable SYSLIB0016
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0016
Чтобы отключить все SYSLIB0016
предупреждения в проекте, добавьте <NoWarn>
свойство в файл проекта.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0016</NoWarn>
</PropertyGroup>
</Project>
Дополнительные сведения см. в разделе Отключение предупреждений.