如何将WebClient与.NetCore一起使用?

有没有办法在.NET Core应用程序中使用WebClient ? 如果我构建应用程序,我会收到以下错误:

 Severity Code Description Project File Line Error CS0246 The type or namespace name 'WebClient' could not be found (are you missing a using directive or an assembly reference?) 

我认为WebClient不是.NET Core的一部分,但还有其他选择吗?

从.Net Standard 2.0开始,WebClient现在可用于该标准的任何实现,包括.Net Core。 但是,Stack Overflow问题“ 在HttpClient和WebClient之间需要帮助决定 ”有一些相当好的答案,为什么你应该使用HttpClient

提到的缺点之一是HttpClient没有内置的进度报告。 但是,因为它正在使用流,所以可以编写自己的流。 “ 如何实现Portable HttpClient的进度报告 ”的答案提供了报告响应流进度的示例。

如果您要定位标准的先前版本,则需要使用HttpClient因为.Net Standard 2.0之前WebClient不可用。