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. Estou escrevendo um pequeno aplicativo para trabalhar com arquivos e banco de dados. Tenho um código que pode lançar várias exceções diferentes: por exemplo, `FileNotFoundException` (se o arquivo não for encontrado), `IOException` (problemas de leitura) e `SqlException` (erro de conexão com o banco de dados).
Atualmente, estou tratando-as assim:
```csharp
try
{
// código que pode lançar várias exceções
}
catch (FileNotFoundException ex)
{
Console.WriteLine("Arquivo não encontrado: " + ex.Message);
}
catch (IOException ex)
{
Console.WriteLine("Erro de entrada/saída: " + ex.Message);
}
catch (SqlException ex)
{
Console.WriteLine("Erro de banco de dados: " + ex.Message);
}
```
Mas isso parece muito verboso, especialmente se para todas as exceções for necessário executar a mesma ação (por exemplo, registrar no log e mostrar uma mensagem de erro ao usuário). Ouvi dizer que em algumas linguagens é possível listar as exceç