I have this code in console application and it runs in a loop
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(search);
request.Headers.Add("Accept-Language", "de-DE");
request.Method = "GET";
request.Accept = "text/html";
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (StreamReader reader = new StreamReader(response.GetResponseStream(),
Encoding.ASCII))
{
string html = reader.ReadToEnd();
FindForMatch(html, url);
}
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
after few loops it gives
Unable to read data from the transport connection: The connection was closed
error. any idea why this happen? thanx..
I just tried the code, looping 10 times to load google.com and it worked for me. Is there something special about
search
- perhaps try replacing it with another uri. I did not includefindForMatch
- I assume it is not doing anything that would cause the exception.After adding
it works fine..
I found it form this blog post
WebRequest and Unable to read data from the transport connection Error
Try disposing the reader in the finally block of your try catch