C# 在“DownloadFileTaskAsync”之后获取文件详细信息`

C# 在“DownloadFileTaskAsync”之后获取文件详细信息`,c#,asp.net-core,.net-core,C#,Asp.net Core,.net Core,我正在从Uri下载一个文件,如下所示: var webClient = new System.Net.WebClient(); await webClient.DownloadFileTaskAsync(uri, filePath); 是否可以在下载文件后直接获取文件的大小和内容类型,而无需任何其他调用?(即,使用类似的下载功能返回下载文件的详细信息,或任何类似的方法)无论如何,您都不应该使用WebClient。HttpClient是http调用的推荐方法。基于WebClient@Tseng的

我正在从Uri下载一个文件,如下所示:

var webClient = new System.Net.WebClient();
await webClient.DownloadFileTaskAsync(uri, filePath);

是否可以在下载文件后直接获取文件的大小和内容类型,而无需任何其他调用?(即,使用类似的下载功能返回下载文件的详细信息,或任何类似的方法)

无论如何,您都不应该使用WebClient。HttpClient是http调用的推荐方法。基于WebClient@Tseng的源代码,我认为这是不可能的,为什么HttpClient更好?通常HttpClient更易于重用和处理(即线程安全,处理连接的循环等),它返回webresponse,允许您读取标题。您可以使用Content-Length头,尽管它不是真正可靠的(如果流被压缩,您将得到压缩的大小)。当然,您可以将它包装在内存流中,自己迭代它并计算大小等。