none
vb.net webclient downloadstring方法超时 RRS feed

  • 问题

  • 在使用VS2010,用webclient的downloadstring方法下载网页源码时,经常遇到程序挂起。

    听说要重写GetWebRequest,添加WebRequest对象超时时间.代码如下:

    重写GetWebRequest,添加WebRequest对象超时时间。

    public class CNNWebClient : WebClient
        
    {

            
    private int _timeOut = 10;

            
    /**//// <summary>
            
    /// 过期时间
            
    /// </summary>

            public int Timeout
            
    {
                
    get
                
    {
                    
    return _timeOut;
                }

                
    set
                
    {
                    
    if (value <= 0)
                        _timeOut 
    = 10;
                    _timeOut 
    = value;
                }

            }


            
    /**//// <summary>
            
    /// 重写GetWebRequest,添加WebRequest对象超时时间
            
    /// </summary>
            
    /// <param name="address"></param>
            
    /// <returns></returns>

            protected override WebRequest GetWebRequest(Uri address)
            
    {
                HttpWebRequest request 
    = (HttpWebRequest)base.GetWebRequest(address);
                request.Timeout 
    = 1000 * Timeout;
                request.ReadWriteTimeout 
    = 1000 * Timeout;
                
    return request;
            }

    }

    这个代码要改写成VB后,应该放在哪?

    2012年9月14日 0:50

答案