Partilhar via


Obsolações de API com IDs de diagnóstico não padrão (.NET 9)

Algumas APIs foram marcadas como obsoletas, começando no .NET 9. Essa alteração de quebra é específica para APIs que foram marcadas como obsoletas com uma ID de diagnóstico personalizada. Suprimir a ID de diagnóstico de obsolescência padrão, que é CS0618 para o compilador C#, não suprime os avisos que o compilador gera quando essas APIs são usadas.

Alterar a descrição

Em versões anteriores do .NET, essas APIs podem ser usadas sem qualquer aviso de compilação. No .NET 9 e versões posteriores, o uso dessas APIs produz um aviso ou erro em tempo de compilação com uma ID de diagnóstico personalizada. O uso de IDs de diagnóstico personalizados permite suprimir os avisos de obsolescência individualmente, em vez de suprimir todos os avisos de obsolescência.

A tabela a seguir lista as IDs de diagnóstico personalizadas e suas mensagens de aviso correspondentes para APIs obsoletas.

ID de diagnóstico Description Gravidade
SYSLIB0009 AuthenticationManager não é suportado. Os métodos serão no-op ou throw PlatformNotSupportedException. Aviso
SYSLIB0014: WebRequest, HttpWebRequest, ServicePoint, WebClient estão obsoletos ServicePointManager está totalmente obsoleta. As configurações em ServicePointManager não afetam SslStream ou HttpClient (esse comportamento não foi alterado desde o .NET 6). Aviso
SYSLIB0054 Thread.VolatileRead e Thread.VolatileWrite são obsoletas. Use Volatile.Read ou Volatile.Write em vez disso. Aviso
SYSLIB0055 AdvSimd.ShiftRightLogicalRoundedNarrowingSaturate* métodos com parâmetros assinados são obsoletos. Em vez disso, use as sobrecargas não assinadas. Aviso
SYSLIB0056 Assembly.LoadFrom com um costume AssemblyHashAlgorithm é obsoleto. Use sobrecargas sem um AssemblyHashAlgorithmarquivo . Aviso
SYSLIB0057 X509Certificate2 e X509Certificate construtores para conteúdo binário e de arquivo são obsoletos. Aviso

Versão introduzida

.NET 9

Tipo de mudança de rutura

Essas obsolações podem afetar a compatibilidade da fonte.

  • Siga as orientações específicas fornecidas para cada ID de diagnóstico usando o link de URL fornecido no aviso.

  • Avisos ou erros para essas obsolescências não podem ser suprimidos usando o ID de diagnóstico padrão para tipos ou membros obsoletos; em vez disso, use o valor de ID de diagnóstico personalizado SYSLIBxxxx .

APIs afetadas

SYSLIB0009

SYSLIB0014

SYSLIB0054

SYSLIB0055

SYSLIB0056

SYSLIB0057

Consulte também