我正在使用WCF REST 4.0默认端点配置,在客户端我正在使用WebClient。 无论如何要为WebClient配置新的超时值吗?
答案 0 :(得分:2)
我已经使用了here找到的自定义类。
public class MyWebClient: WebClient
{
//time in milliseconds
private int timeout;
public int Timeout
{
get {
return timeout;
}
set {
timeout = value;
}
}
public MyWebClient()
{
this.timeout = 60000;
}
public MyWebClient(int timeout)
{
this.timeout = timeout;
}
protected override WebRequest GetWebRequest(Uri address)
{
var result = base.GetWebRequest(address);
result.Timeout = this.timeout;
return result;
}
}
一般的想法是覆盖内部WebRequest的超时。太棒了!