我有一些代码,下载我已经使用了一段时间的网页的内容。这段代码工作正常,从来没有提供过一个问题,但仍然没有...但是,有一个页面是相当大的(2MB,没有图像)与4个表,分别有4,20,100,600行和约20列宽。不完整的HttpWebResponse与大型数据集
当试图获取所有数据时,它完成而没有任何明显的错误或异常,但只返回到第四表中的第60行 - 有时更多,有时更少。在大约20-30秒内,浏览器完成加载,直到页面完成,持续时间(看起来像刷新)。
我已经尝试了一些SO的解决方案,并没有任何不同的结果搜索。下面是当前的代码,但我已经:代理,异步,没有超时,虚假keepalive ...
我不能使用WebClient(作为另一个远取企图),因为我需要使用cookiecontainer登录。
HttpWebRequest pageImport = (HttpWebRequest)WebRequest.Create(importUri);
pageImport.ReadWriteTimeout = Int32.MaxValue;
pageImport.Timeout = Int32.MaxValue;
pageImport.UserAgent = "User-Agent Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3";
pageImport.Accept = "Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
pageImport.KeepAlive = true;
pageImport.Timeout = Int32.MaxValue;
pageImport.ReadWriteTimeout = Int32.MaxValue;
pageImport.MaximumResponseHeadersLength = Int32.MaxValue;
if (null != LoginCookieContainer)
{
pageImport.CookieContainer = LoginCookieContainer;
}
Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
using (WebResponse response = pageImport.GetResponse())
using (Stream stream = response.GetResponseStream())
using (StreamReader reader = new StreamReader(stream, encode))
{
stream.Flush();
HtmlRetrieved = reader.ReadToEnd();
}