Avatar ·

如何在C#的一个catch块中捕获多种异常类型?

大家好!我是一名初学C#的开发者,遇到了异常处理的问题。我有一个方法,它执行文件和数据库操作。我想以相同的方式处理不同类型的异常(例如 `FileNotFoundException`、`IOException`、`SqlException` 和 `ArgumentException`)——记录错误并向用户显示消息。目前我的代码如下: ```csharp try { // 一些可能抛出不同异常的代码 } catch (FileNotFoundException ex) { LogError(ex); ShowMessage("文件未找到"); } catch (IOException ex) { LogError(ex); ShowMessage("输入输出错误"); } catch (SqlException ex) { LogError(ex); ShowMessage("数据库错误"); } catch (ArgumentException ex) { LogError(ex); ShowMessage("无效参数"); } ``` 这非常冗长且重复了相同的代码。我听说在其他语言(例如Java或Python)中,可以在一个catch块中捕获多个异常。