Como capturar vários tipos de exceções em um único bloco catch em C#?
Olá a todos! Sou um desenvolvedor C# iniciante e tive um problema com tratamento de exceções. Tenho um método que realiza operações com arquivos e banco de dados. Quero tratar diferentes tipos de exceções (por exemplo, `FileNotFoundException`, `IOException`, `SqlException` e `ArgumentException`) da mesma forma — registrar o erro e mostrar uma mensagem ao usuário. Atualmente, meu código se parece com isso:
```csharp
try
{
// algum código que pode lançar diferentes exceções
}
catch (FileNotFoundException ex)
{
LogError(ex);
ShowMessage("Arquivo não encontrado");
}
catch (IOException ex)
{
LogError(ex);
ShowMessage("Erro de entrada/saída");
}
catch (SqlException ex)
{
LogError(ex);
ShowMessage("Erro de banco de dados");
}
catch (ArgumentException ex)
{
LogError(ex);
ShowMessage("Argumento inválido");
}
```
Isso é muito verboso e repete o mesmo código. Ouvi dizer que em outras linguagens (como Java ou Python) é possível capturar várias exceções em um único bloco catch.
No answers yet.
Faça login para deixar uma resposta