有没有办法在.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的一部分,但还有其他选择吗?
答案 0 :(得分:30)
从.Net Standard 2.0开始,WebClient现在可用于该标准的任何实现,包括.Net Core。但是,Stack Overflow问题" Need help deciding between HttpClient and WebClient"对于为什么要使用HttpClient
而言,我有一些相当不错的答案。
提到的缺点之一是HttpClient
中没有内置进度报告。但是,因为它正在使用流,所以可以编写自己的流。 " How to implement progress reporting for Portable HttpClient"的回答提供了报告响应流进度的示例。
如果您要定位该标准的先前版本,则您需要使用HttpClient
,因为{。1}}在.Net Standard 2.0之前不可用。
答案 1 :(得分:4)
WebClient
现已在.Net Standard 2.0中提供
https://docs.microsoft.com/en-gb/dotnet/api/system.net.webclient?view=netstandard-2.0