WebRequest, WebClient e ServicePoint estão obsoletos

As classes WebRequest, WebClient e ServicePoint são marcadas como obsoletas e geram um aviso SYSLIB0014 em tempo de compilação.

Versão introduzida

6,0

Descrição das alterações

As classes WebRequest, WebClient e ServicePoint foram adicionadas ao .NET Core na versão 2.0 para compatibilidade com versões anteriores. No entanto, elas introduziram várias alterações interruptivas no runtime; por exemplo, WebRequest.GetRequestStream aloca memória para toda a resposta e WebClient.CancelAsync nem sempre é cancelado imediatamente.

A partir do .NET 6, as classes WebRequest, WebClient e ServicePoint foram preteridas. As classes ainda estão disponíveis, mas não são recomendadas para novos desenvolvimentos. Para reduzir o número de avisos do analisador, somente os métodos de construção são decorados com o atributo ObsoleteAttribute.

Use a classe System.Net.Http.HttpClient em seu lugar.

Para FTP, como HttpClient não oferece suporte, é recomendável usar uma biblioteca de terceiros.

APIs afetadas