2015-08-19 3 views
1

Я пишу приложение, чтобы очистить мой сайт по ключевым словам. Я сталкиваюсь с проблемой, когда, если я попытаюсь прочитать страницу, которая не выполняется, я получаю (не проблема).Добавление catch для игнорирования исключения 404 веб (C#)

Однако, когда мое приложение встречается с 404 веб-исключением, оно не продолжается. Я знаю, что мне нужна попытка и уловка, но я не могу понять, как правильно добавить 404 webexception catch без ошибок. Вот фрагмент кода с проблемой: я думаю, моя проблема в том, что я не знаю, где правильно поставить try/catch, поскольку у меня есть источник возврата; Я получаю сообщение об ошибке, что он не возвращает значение, когда я добавляю catch.

string url = string.Format(@"http://127.0.0.1/website/" + searchterm); 

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url); 
req.Method = "GET"; 
req.UserAgent = "MoZilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))"; 

Uri target = req.RequestUri; 
string source; 

using (StreamReader reader = new StreamReader(req.GetResponse().GetResponseStream())) 
{ 
    source = reader.ReadToEnd(); 
} 
return source; 
+0

Возможный дубликат [Как я могу поймать 404?] (Http://stackoverflow.com/questions/1949610/how-can-i-catch-a-404) (Используйте самый высокий голосовой ответ, а не принятый один) –

+0

Алекс пробовал этот метод и не мог понять, где правильно разместить ловушку, обыскал stackoverflow в течение прошлых лет. :( –

+0

John Saunders ответ в значительной степени копирует/вставляет/использует whats the prob? –

ответ

0

Благодаря Alex K:

Я забыл объявить source = ""; наверху, а не внизу.

Спасибо Alex K!