Поделиться через


Обзоление API с идентификаторами диагностики, не используемыми по умолчанию (.NET 9)

Некоторые API помечены как устаревшие, начиная с .NET 9. Это критическое изменение относится к API, которые были помечены как устаревшие с помощью пользовательского идентификатора диагностики. В случае отключения идентификатора диагностики устаревших элементов по умолчанию (CS0618 для компилятора C#) не отключаются предупреждения, создаваемые компилятором при использовании этих API.

Описание изменения

В предыдущих версиях .NET эти API можно использовать без каких-либо предупреждений сборки. В .NET 9 и более поздних версиях эти API создают предупреждение во время компиляции или ошибку с пользовательским идентификатором диагностики. Применение пользовательских идентификаторов диагностики позволяет отключать предупреждения об устаревших элементах по отдельности вместо общего запрета всех таких предупреждений.

В следующей таблице перечислены пользовательские идентификаторы диагностики и соответствующие им предупреждающие сообщения для устаревших API.

ИД диагностики Description Серьезность
SYSLIB0009 Функция AuthenticationManager не поддерживается. Методы не будут опу или бросать PlatformNotSupportedException. Предупреждение
SYSLIB0054 Thread.VolatileRead и Thread.VolatileWrite являются устаревшими. Вместо этого используются типы Volatile.Read или Volatile.Write. Предупреждение
SYSLIB0055 AdvSimd.ShiftRightLogicalRoundedNarrowingSaturate* Методы с подписанными параметрами устарели. Вместо этого используйте неподписанные перегрузки. Предупреждение

Представленные версии

.NET 9

Тип критического изменения

Эти обнажения могут повлиять на совместимость источников.

  • Следуйте указаниям, приведенным для каждого идентификатора диагностики, используя URL, предоставленный в предупреждении.

  • Предупреждения или ошибки об этих устаревших элементах нельзя отключить с помощью стандартного идентификатора диагностики для устаревших типов или членов. Используйте вместо него пользовательский идентификатор диагностики SYSLIBxxxx.

Затронутые API

SYSLIB0009

SYSLIB0054

SYSLIB0055

См. также