3
在.Net 4.0中我使用WebClient从URL下载文件并将它们保存在本地驱动器中。但是我无法在.Net Core中实现同样的功能。在.Net Core中将文件从url下载到本地设备
任何人都可以帮我解决这个问题吗?
在.Net 4.0中我使用WebClient从URL下载文件并将它们保存在本地驱动器中。但是我无法在.Net Core中实现同样的功能。在.Net Core中将文件从url下载到本地设备
任何人都可以帮我解决这个问题吗?
WebClient
不适用于.NET Core
。的HttpClient
在System.Net.Http
的使用是强制性的,因此:
using System.Net.Http;
using System.Threading.Tasks;
...
public static async Task<byte[]> DownloadFile(string url)
{
using (var client = new HttpClient())
{
using (var result = await client.GetAsync(url))
{
if (result.IsSuccessStatusCode)
{
return await result.Content.ReadAsByteArrayAsync();
}
}
}
return null;
}
您可以使用HttpClient
从System.Net.Http。我建议使用.NET Core 2.0。
public async Task<bool> Download()
{
var client = new HttpClient();
var response = await client.GetAsync("https://github.com/twbs/bootstrap/releases/download/v4.0.0-beta/bootstrap-4.0.0-beta-dist.zip");
using(var fs = new FileStream(@"c:\_data\bootstrap-4.0.0-beta-dist.zip", FileMode.Create))
{
await response.Content.ReadAsStreamAsync().Result.CopyToAsync(fs);
}
return true;
}
你确定asp.net-core-mvc是正确的标签吗?从你的问题来看,你似乎在谈论客户端软件。无论哪种方式:如果你想下载文件,使用'HttpClient'。 – jAC