继承自Web客户端类

时间:2009-05-18 06:10:28

标签: c# inheritance

C#2008

我不确定从Web客户端类继承有多少工作。

目前我在我的项目中使用它。我无法改变其他任何事情。客户希望在一段时间后暂停。 Web客户端没有此功能。

因此,我不是重新发明轮子,而是考虑继承Web客户端并添加此属性。

您认为这是一个合适的解决方案吗?添加它可能意味着更多的工作。最简单的方法是什么?

非常感谢,

1 个答案:

答案 0 :(得分:2)

扩展webclient以添加一个超时属性,该属性可以选择在重载的构造函数中设置(超时为0或更小意味着没有超时)。然后重写GetWebRequest方法:

protected override WebRequest GetWebRequest(Uri address) 
{ 
    var req = base.GetWebRequest(address); 
    var httpReq = req as HttpWebRequest;
    if (httpReq != null && Timeout > 0) 
    {
        httpReq.Timeout = Timeout; 
    } 

    return req; 
}