static private string SearchURL(string id)
{ try
{ //Get the ViewState and EventValidation HttpWebRequest request = WebRequest.Create(URI) as HttpWebRequest; request.Method = "GET"; request.KeepAlive = false; //Get the response HttpWebResponse response = request.GetResponse() as HttpWebResponse; System.IO.Stream responseStream = response.GetResponseStream(); System.IO.StreamReader reader = new System.IO.StreamReader(responseStream, Encoding.UTF8); string srcString = reader.ReadToEnd(); //Get the ViewState string viewStateFlag = "id=/"__VIEWSTATE/" value=/""; int i = srcString.IndexOf(viewStateFlag) + viewStateFlag.Length; int j = srcString.IndexOf("/"", i); string viewState = srcString.Substring(i, j - i); //Get the ViewState string EventValidationFlag = "id=/"__EVENTVALIDATION/" value=/""; i = srcString.IndexOf(EventValidationFlag) + EventValidationFlag.Length; j = srcString.IndexOf("/"", i); string eventValidation = srcString.Substring(i, j - i); //Compose the URL viewState = Uri.EscapeDataString(viewState); eventValidation = Uri.EscapeDataString(eventValidation); string strSearch = Uri.EscapeDataString("查询"); string formatString = "__VIEWSTATE={0}&__EVENTVALIDATION={1}&TextBox1={2}&Button1={3}"; string postString = string.Format(formatString, viewState, eventValidation, id,strSearch); //Change to byte[] byte[] postData = Encoding.ASCII.GetBytes(postString); //Compose the new request request = WebRequest.Create(URI) as HttpWebRequest; request.Method = "POST"; request.KeepAlive = false; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = postData.Length; System.IO.Stream outputStream = request.GetRequestStream(); outputStream.Write(postData, 0, postData.Length); outputStream.Close(); //Get the new response response = request.GetResponse() as HttpWebResponse; responseStream = response.GetResponseStream(); reader = new System.IO.StreamReader(responseStream); srcString = reader.ReadToEnd(); return srcString; } catch (WebException we) { Console.WriteLine("Communication error," + we.Message + " please check your connectivity and try again.", "Error"); } catch { Console.WriteLine("Unknow error.", "Error"); } return null; }
