1
try
{
WebRequest request = WebRequest.Create("http://facebook.com");
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
MessageBox.Show("I am here!"); // Not run
}
catch (Exception ex)
{
MessageBox.Show("Error Occurred!"); //Not run!
}
在我的国家脸书被过滤和当我运行这个代码时,没有任何异常将被抛出,也程序不显示消息“我在这里! 发生了什么?不会抛出的异常
我想在timer_tick中每1分钟使用一次这段代码,并用活动状态更新ui标签。你有其他方法吗?
你是什么意思的“过滤”?如果您将URL输入浏览器,您会看到什么? – Krumelur
MessageBox.Show()应该被调用,所以它会出现他们没有做你期望他们做的事情。你可以在它们上面放置一个断点来查看哪个被调用? 根据过滤方式的不同,即使无法访问网站,也可能不会抛出异常。 – LittleDebugger
是什么让你觉得它应该抛出异常?只是因为该网站被阻止,并不意味着整个请求失败。这很可能是请求被重定向到“阻止”页面,和/或HTTPStatus代码不是200 – Rob