WCF REST 4.0 WebClient默认端点设置超时

时间:2012-09-18 10:33:43

标签: wcf rest webclient

我正在使用WCF REST 4.0默认端点配置,在客户端我正在使用WebClient。 无论如何要为WebClient配置新的超时值吗?

1 个答案:

答案 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的超时。太棒了!