SYSLIB0014: WebRequest, HttpWebRequest, ServicePoint, WebClient estão obsoletos
As APIs a seguir são marcadas como obsoletas, começando no .NET 6. Usá-los no código gera aviso SYSLIB0014
em tempo de compilação.
- WebRequest()
- System.Net.WebRequest.Create
- System.Net.WebRequest.CreateHttp
- System.Net.WebRequest.CreateDefault(Uri)
- HttpWebRequest(SerializationInfo, StreamingContext)
- ServicePointManager (A partir do .NET 9)
- System.Net.ServicePointManager.FindServicePoint
- WebClient()
Para reduzir o número de avisos do analisador, a ServicePoint classe não é marcada como obsoleta, mas todas as maneiras de obter suas instâncias são.
As configurações ativadas ServicePointManager e ServicePoint não afetam mais SslStream ou HttpClient.
Soluções
Utilize HttpClient em substituição.
Para obter mais informações, consulte HttpWebRequest to HttpClient migration guide.
Suprimir um aviso
Se você precisar usar as APIs obsoletas, poderá suprimir o aviso no código ou no arquivo de projeto.
Para suprimir apenas uma única violação, adicione diretivas de pré-processador ao arquivo de origem para desativar e reativar o aviso.
// Disable the warning.
#pragma warning disable SYSLIB0014
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0014
Para suprimir todos os SYSLIB0014
avisos em seu projeto, adicione uma <NoWarn>
propriedade ao seu arquivo de projeto.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0014</NoWarn>
</PropertyGroup>
</Project>
Para obter mais informações, consulte Suprimir avisos.