private string GetPageHtml(Uri uri)
{
string result = null;
WebRequest request = WebRequest.Create(uri);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
string encodingName = response.ContentEncoding.Trim();
if (string.IsNullOrEmpty(encodingName)) {
encodingName = "utf-8";
}
Encoding encoding = Encoding.GetEncoding(encodingName);
using (Stream stream = response.GetResponseStream()) {
using (StreamReader reader = new StreamReader(stream, encoding))
result = reader.ReadToEnd();
}
return result;
}