Мне было интересно, какие исключения я должен защитить от использования при использовании WebClient.DownloadString
.Исключение обработки правильного пути для WebClient.DownloadString
Вот как я его сейчас использую, но я уверен, что вы, ребята, можете предложить более надежную обработку исключений.
Например, с верхней части моей головы:
- Нет подключения к Интернету.
- Восстановленный сервер 404.
- Время ожидания сервера.
Каков предпочтительный способ обработки этих случаев и исключения исключений из пользовательского интерфейса?
public IEnumerable<Game> FindUpcomingGamesByPlatform(string platform)
{
string html;
using (WebClient client = new WebClient())
{
try
{
html = client.DownloadString(GetPlatformUrl(platform));
}
catch (WebException e)
{
//How do I capture this from the UI to show the error in a message box?
throw e;
}
}
string relevantHtml = "<tr>" + GetHtmlFromThisYear(html);
string[] separator = new string[] { "<tr>" };
string[] individualGamesHtml = relevantHtml.Split(separator, StringSplitOptions.None);
return ParseGames(individualGamesHtml);
}
См. Править. –
обновил мой ответ –
Спасибо Томас, я думаю, я спрашивал, как пузырить ошибку исключения. :) –