Я пытаюсь обрабатывать два разных WebException
правильно.
В основном они обрабатываются после вызова WebClient.DownloadFile(string address, string fileName)
AFAIK, до сих пор есть два, с которыми мне приходится обращаться: WebException
:
- Удаленное имя не может быть разрешено (т.е. нет подключения к сети для доступа к серверу для загрузки файла)
- (404) Файл отсутствует (т.е. файл не существует на сервере)
Там может быть больше, но это то, что я нашел наиболее важным до сих пор.
Итак, как я должен обрабатывать это правильно, так как они оба WebException
, но я хочу обрабатывать каждый случай выше по-разному.
Это то, что у меня есть до сих пор:
try
{
using (var client = new WebClient())
{
client.DownloadFile("...");
}
}
catch(InvalidOperationException ioEx)
{
if (ioEx is WebException)
{
if (ioEx.Message.Contains("404")
{
//handle 404
}
if (ioEx.Message.Contains("remote name could not")
{
//handle file doesn't exist
}
}
}
Как вы можете видеть, я проверяю сообщение, чтобы узнать, какой тип WebException он есть. Я бы предположил, что есть лучший или более точный способ сделать это?
Спасибо