代码改变世界

关于FtpWebRequest.Timeout属性的理解

2011-08-17 16:55  李泱  阅读(1254)  评论(0编辑  收藏  举报
由于在实际的开发中遇到FTP默认超时时间过长,如果由于请求FTP地址出错的话,那可能得等半天啦。

 

通过查询MSDN对FtpWebRequest.Timeout的解释才知道FtpWebRequest.Timeout不是自己原先以为的请求超时。
以下是MSDN的注解:
       A Domain Name System (DNS) query may take up to 15 seconds to return or time out.这句话可以解释等半天的原因所在。If your request contains a host name that requires resolution and you set Timeout to a value less than 15 seconds, it may take 15 seconds or more before a WebException is thrown to indicate a time-out on your request.
       http://msdn.microsoft.com/en-us/library/system.net.ftpwebrequest.timeout(v=vs.80).aspx
那怎么设置FTP请求超时呢?只能自己手动丰衣足食,写代码啦,编一个监听超时时钟,外加公布一个公共属性RequestTimeout就可以搞定。