using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
namespace AutoUpdateEx
{
public class WebClientPro : WebClient
{
///
/// 过期时间
///
public int Timeout { get; set; }
///
/// 设置请求超时时间
/// 默认30秒
///
/// 超时时间(ms)
public WebClientPro(int timeout = 30000)
{
Timeout = timeout;
}
///
/// 重写GetWebRequest,添加WebRequest对象超时时间
///
///
///
protected override WebRequest GetWebRequest(Uri address)
{
//WebClient里上传下载的方法很多,但最终应该都是调用了这个方法
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
request.Timeout = Timeout;
request.ReadWriteTimeout = Timeout;
return request;
}
}
}