C# HttpWebResponse流读取过早返回零

C# HttpWebResponse流读取过早返回零,c#,.net,C#,.net,我有一段类似的代码: private void DownloadData(HttpWebResponse response) { var stream = response.GetResponseStream(); byte[] buffer = new byte[DownloadBlockSize]; while((int)(stream.Read(buffer, 0, DownloadBlockSize)) > 0) { .... copy

我有一段类似的代码:

private void DownloadData(HttpWebResponse response)
{
    var stream = response.GetResponseStream();
    byte[] buffer = new byte[DownloadBlockSize];
    while((int)(stream.Read(buffer, 0, DownloadBlockSize)) > 0)
    {
      .... copy data from buffer to a member etc. ...
    }
}
此代码是在各种客户机上运行的应用程序的一部分,但错误日志会发送到服务器。在错误日志中,我可以看到一些迹象表明下载可能很少被截断,但没有引发异常


HttpWebResponse
读取时,
Stream.Read
是否可能返回
0
,而不会出现网络错误?什么是
data.DownloadStream
,它与
流的关系如何?就此而言,
data
是什么?很抱歉复制粘贴错误,现在有望修复。我意识到这会分散我对真正问题的注意力。