我執行以下代碼:如何避免在的GetResponse()方法引發WebException
// get a picture from http://www.mysite.com/logos/logo.png
WebRequest pictureRequest = WebRequest.Create(themeLogoUri);
response = pictureRequest.GetResponse();
在網站上的標識可能存在與否,而當它不存在,則GetResponse()
方法失敗投擲一個WebException (404)
。在此之前,這一切都是正確的。
當我正在調試時,總是出現這種異常很煩人,因爲調試器總是停在這個異常。我知道我可以忽略調試器中的某種異常,但我更喜歡避免拋出異常,所以我的問題是。
如何檢查請求是否正確(圖像確實存在),如果不存在,則返回並在其他情況下繼續使用GetResponse()
?
在此先感謝。
如果你閱讀答案,我說我想檢查webRequest是否存在,我想避免例外,所以這個答案是無效的。請刪除它。 –
@DanielPeñalba,爲什麼不簡單地創建一個方法(或擴展方法),它完全符合:'DoesTargetExist'。它只需要包含一個try/catch,在'catch'裏面你返回false,在'try'結尾返回true。爲了防止下載整個圖片,使用'WebClient','OpenStream'和'Read'。 – Abel