在webClient.DownloadData上设置超时?

时间:2010-01-29 16:40:51

标签: c# .net asp.net

我正在使用第三方网址根据IP地址确定网站访问者的位置。

我使用WebClient.DownloadData()来获取url返回的信息,这是一个单词的答案,例如:根据{{​​3}}

一旦我检测到用户所在的国家/地区,我想要A)将它们保存在当前网站上并将国家/地区存储在会话中,或者B)将它们重定向到其他国家/地区网站。

我担心的是WebClient.DownloadData()挂起,因此用户等待了很长时间而无法使用该网站。我想过使用DownloadDataAsync,但这对我来说似乎不是一个解决方案,因为我不希望他们做任何事情,直到我找到国家(也见http://api.hostip.info/country.php

有没有办法在我调用WebClient.DOwnloadData时设置时间限制,例如如果它没有在2秒内返回,放弃?

1 个答案:

答案 0 :(得分:2)

看起来HttpWebRequest可能是最佳选择