Avatar ·

كيفية التقاط أنواع متعددة من الاستثناءات في كتلة catch واحدة في C#؟

السلام عليكم! أنا مطور 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) يمكن اعتراض عدة استثناءات في