兄弟我做一个把IP转化为相应地址的程序。现在想做到异步功能,可是不知道如何处理,下面是我的代码,请问在什么地方修改变成异步呢。
我现在的代码是给了一个定的IP,因为我以后,要进行从数据库里,提取大量IP进行转化。所以要采用异步。下面是我的程序string strIP = this.txtIP.Text.Trim();
string strAction = "2";
            ASCIIEncoding encoding = new ASCIIEncoding();
            string postData = "ip=" + strIP;
            postData += "&action=" + strAction;
            byte[] data = encoding.GetBytes(postData);            HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://www.ip138.com/ips.asp");
            myRequest.Method = "POST";
            myRequest.ContentType = "application/x-www-form-urlencoded";
            myRequest.ContentLength = data.Length;            Stream myStream = myRequest.GetRequestStream();
            myStream.Write(data, 0, data.Length);
            myStream.Close();            HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
            StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default);
            string content = reader.ReadToEnd();
            string con = content.Substring(content.IndexOf("本站主数据") + 6, content.IndexOf("</li><li>参考数据一") - content.IndexOf("本站主数据") - 1);            this.lblViewIP.Text = con;

解决方案 »

  1.   

    可以采用 WAITANY的方法来实现,你去GOOGLE上查一下【 WAITANY】有很多例子的
      

  2.   

    我觉得问题可以简化可以自己去网上DOWN一个IP库然后操作库就行了
      

  3.   

    HttpWebResponse 我一直在用,
    但是丛来还没有用过异步的,
    所以帮不了你
    但是我可以告诉你,
    同步肯定也没问题啊,
    我们就没有用异步,网站的访问量也很大的
      

  4.   

    用什么异步,多线程就可以了
    Thread
      

  5.   

    只能用xmlhttp了,在ajax里面调用这些代码,由ajax完成最后在网页上面显示。
      

  6.   


    如果仅仅是这个原因 我的同步也完全能够实现
    就是整体加一下try
    catch的时候不进行任何操作直接继续就可以啦